tx · 8AwB9SWCVRH4UQcgTE6gnC8sNRzfWCuptiLvdQKjaKpm 3N34Zi5VD4m9az4kEXWDJngkMHMTpqLcoqo: -0.01900000 Waves 2022.09.24 12:21 [2243032] smart account 3N34Zi5VD4m9az4kEXWDJngkMHMTpqLcoqo > SELF 0.00000000 Waves
{ "type": 13, "id": "8AwB9SWCVRH4UQcgTE6gnC8sNRzfWCuptiLvdQKjaKpm", "fee": 1900000, "feeAssetId": null, "timestamp": 1664011244618, "version": 2, "chainId": 84, "sender": "3N34Zi5VD4m9az4kEXWDJngkMHMTpqLcoqo", "senderPublicKey": "AmXrJ1inc5jpKhf6D9aDcRU8QWHZXBJdBBvz9VsKDe9x", "proofs": [ "4FERMmVmpFiGJa2har7MbT1pQnocYKyBCxzTxqfRmcwPPK7KK6jTySUxXgmP9VLboFdSqYRpJyTEB9oFBq8H9VNw" ], "script": "base64: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ZSBpbmNyZWFzZSBuby4gb2YgZGF5cyAoCQABpAAAAAEFAAAAD1VzZXJDbGFpbUFtb3VudAIAAAABLwkAAaQAAAABCAUAAAADcG10AAAABmFtb3VudAIAAAAMKS8xMF44IENPREUuAwkBAAAAAiE9AAAAAgUAAAALZ2Fwb2ZoZWlnaHQAAAAAAAAB+kAJAAACAAAAAQIAAABDWW91IGFyZSBOb3QgRWxpZ2libGUgdG8gTWludCBDT0RFLiBJdCBuZWVkIG1pbmltdW0gOTAgRGF5cyBTdGFraW5nLgMJAAAAAAAAAgUAAAAQVXNlck5vT2ZEZXBvc2l0cwAAAAAAAAAAAQkAAAIAAAABAgAAAD1Zb3UgQWxyZWFkeSBIYXZlIGFuIEFjdGl2ZSBTdGFraW5nLCBQbGVhc2UgV2FpdCB1bnRpbCBNYXR1cmUuCQAETAAAAAIJAQAAAARCdXJuAAAAAgUAAAALQ09ERUFzc2V0SUQIBQAAAANwbXQAAAAGYW1vdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABJUb3RhbF9CdXJuZWRfQ09ERToFAAAAD1RvdGFsQnVybmVkQ09ERQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAALVG90YWxfVHhuczoFAAAADVRvdGFsVHhuc0NPREUJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAACUluZmxhdGlvbgUAAAALSW5mbGF0aW9uTm8JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADEJsb2NrX1Bhc3NlZAUAAAAJYmxvY2tkaWZmCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAD05vX09mX0RlcG9zaXRzXwUAAAAKY3VycmVudEtleQUAAAAYU3VtcHVwb2ZVc2VyTm9PZkRlcG9zaXRzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAEkRlcG9zaXRfaGVpZ2h0X09mXwUAAAAKY3VycmVudEtleQUAAAAGaGVpZ2h0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAFVRvdGFsX0xvY2tfQmxvY2tzX09m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ASwAAAACAgAAAAtSZXdhcmRzX09mXwUAAAAKY3VycmVudEtleQQAAAASUHJldmlvdXNJc3N1ZWRDT0RFBAAAAAckbWF0Y2gwCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzAgAAABJUb3RhbF9Jc3N1ZWRfQ09ERToDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAPVG90YWxJc3N1ZWRDT0RFCQAAZAAAAAIFAAAAElByZXZpb3VzSXNzdWVkQ09ERQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAAtSZXdhcmRzX09mXwUAAAAKY3VycmVudEtleQQAAAAUZmV0Y2h1c2Vyc3Rha2VoZWlnaHQJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAAAtTdGFraW5nRGFwcAkAASwAAAACAgAAABJEZXBvc2l0X2hlaWdodF9PZl8FAAAACmN1cnJlbnRLZXkCAAAAJllvdXIgQWRkcmVzcyBub3QgRm91bmQgb24gU3Rha2luZyBEQXBwBAAAABVmZXRjaHVzZXJtYXR1cmVoZWlnaHQJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAAAtTdGFraW5nRGFwcAkAASwAAAACAgAAABVUb3RhbF9Mb2NrX0Jsb2Nrc19PZl8FAAAACmN1cnJlbnRLZXkCAAAAJllvdXIgQWRkcmVzcyBub3QgRm91bmQgb24gU3Rha2luZyBEQXBwBAAAAAtnYXBvZmhlaWdodAkAAGUAAAACBQAAABVmZXRjaHVzZXJtYXR1cmVoZWlnaHQFAAAAFGZldGNodXNlcnN0YWtlaGVpZ2h0AwkBAAAAAiE9AAAAAggFAAAAA3BtdAAAAAdhc3NldElkBQAAAAt4VVNEQXNzZXRJRAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAMldyb25nIEFzc2V0IEF0dGFjaGVkIGZvciBQYXltZW50LCBwbGVhc2UgQXR0YWNoIDAuCQABpAAAAAEJAABrAAAAAwAAAAAAAAAAAQUAAAAIQ2xhaW1GZWUAAAAAAAABhqACAAAAByB4VVNEICgJAAJYAAAAAQUAAAALeFVTREFzc2V0SUQCAAAAASkDCQEAAAACIT0AAAACCAUAAAADcG10AAAABmFtb3VudAUAAAAIQ2xhaW1GZWUJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAFlBsZWFzZSBBdHRhY2ggRXhhY3QgMC4JAAGkAAAAAQkAAGsAAAADAAAAAAAAAAABBQAAAAhDbGFpbUZlZQAAAAAAAAGGoAIAAAAGIHhVU0QuAwkAAGYAAAACCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAFVRvdGFsX0xvY2tfQmxvY2tzX09mXwUAAAAKY3VycmVudEtleQUAAAAGaGVpZ2h0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAFWW91ciAJAAGkAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAAtSZXdhcmRzX09mXwUAAAAKY3VycmVudEtleQIAAAA8LzEwXjggQ09ERSBhcmUgU3RpbGwgTWF0dXJpbmcuIFRva2VuIHdpbGwgYmUgVW5sb2NrZWQgYWZ0ZXIgCQABpAAAAAEJAABlAAAAAgkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABVUb3RhbF9Mb2NrX0Jsb2Nrc19PZl8FAAAACmN1cnJlbnRLZXkFAAAABmhlaWdodAIAAAAIIGJsb2Nrcy4DCQAAAAAAAAIFAAAAEWNoZWNrZGVwb3NpdHZhbHVlAAAAAAAAAAAACQAAAgAAAAECAAAAK1lvdSBIYXZlIEFscmVhZHkgV2l0aGRyYXcgeW91ciBDT0RFIEFtb3VudC4DCQEAAAACIT0AAAACBQAAAAtnYXBvZmhlaWdodAAAAAAAAAH6QAkAAAIAAAABAgAAALxZb3UgYXJlIE5vdCBFbGlnaWJsZSB0byBXaXRoZHJhdyBDT0RFLiBJdCBuZWVkIG1pbmltdW0gOTAgRGF5cyBTdGFraW5nIGF0IEE0QSBEQXBwLiBQcm9iYWJseSB5b3UgYWxyZWFkeSBoYXZlIENsYWltZWQgWW91ciBTdGFrZSBvciB5b3UgT3ZlcndyaXRlIHRoZSBTbWFydCBDb250cmFjdCB3aXRoIGxlc3MgdGhhbiA5MCBkYXlzLgMJAABnAAAAAgUAAAARZmV0Y2hVc2VyU3Rha2VBbXQAAAABF2WS3/8JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAC1RvdGFsX1R4bnM6BQAAAA1Ub3RhbFR4bnNDT0RFCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABNUb3RhbF9DT0RFX0NsYWltZWQ6BQAAABJ0b3RhbHJld2FyZGNsYWltZWQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAElRvdGFsX0lzc3VlZF9DT0RFOgUAAAAPVG90YWxJc3N1ZWRDT0RFCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAAxGZWVfJV9DaGFyZ2UFAAAADkZsYXRmZWVQZXJjZW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAApGZWVfQW1vdW50BQAAAA51c2VyRmxhdEZlZUFtdAkABEwAAAACCQEAAAAHUmVpc3N1ZQAAAAMFAAAAC0NPREVBc3NldElECQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAC1Jld2FyZHNfT2ZfBQAAAApjdXJyZW50S2V5BgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIJAABlAAAAAgkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAAtSZXdhcmRzX09mXwUAAAAKY3VycmVudEtleQUAAAAOdXNlckZsYXRGZWVBbXQFAAAAC0NPREVBc3NldElECQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEFAAAAElRyZWFzdXJ5RmVlQWRkcmVzcwUAAAAOdXNlckZsYXRGZWVBbXQFAAAAC0NPREVBc3NldElECQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAD05vX09mX0RlcG9zaXRzXwUAAAAKY3VycmVudEtleQAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAABJEZXBvc2l0X2hlaWdodF9PZl8FAAAACmN1cnJlbnRLZXkAAAAAAAAAAAAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAVVG90YWxfTG9ja19CbG9ja3NfT2ZfBQAAAApjdXJyZW50S2V5AAAAAAAAAAAACQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAEkRlcG9zaXRfQW1vdW50X09mXwUAAAAKY3VycmVudEtleQAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAAAtSZXdhcmRzX09mXwUAAAAKY3VycmVudEtleQAAAAAAAAAAAAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAdtZXNzYWdlAgAAACg8aDE+Q09ERSBVblN0YWtlZCBTdWNjZXNzZnVsbHkhPC9oMT48YnI+BQAAAANuaWwJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAC1RvdGFsX1R4bnM6BQAAAA1Ub3RhbFR4bnNDT0RFCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABNUb3RhbF9DT0RFX0NsYWltZWQ6BQAAABJ0b3RhbHJld2FyZGNsYWltZWQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAElRvdGFsX0lzc3VlZF9DT0RFOgUAAAAPVG90YWxJc3N1ZWRDT0RFCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAAxGZWVfJV9DaGFyZ2UFAAAAC0ZlZXNQZXJjZW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAApGZWVfQW1vdW50BQAAAAp1c2VyRmVlQW10CQAETAAAAAIJAQAAAAdSZWlzc3VlAAAAAwUAAAALQ09ERUFzc2V0SUQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAALUmV3YXJkc19PZl8FAAAACmN1cnJlbnRLZXkGCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgkAAGUAAAACCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAC1Jld2FyZHNfT2ZfBQAAAApjdXJyZW50S2V5BQAAAAp1c2VyRmVlQW10BQAAAAtDT0RFQXNzZXRJRAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAABJUcmVhc3VyeUZlZUFkZHJlc3MFAAAACnVzZXJGZWVBbXQFAAAAC0NPREVBc3NldElECQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAD05vX09mX0RlcG9zaXRzXwUAAAAKY3VycmVudEtleQAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAABJEZXBvc2l0X2hlaWdodF9PZl8FAAAACmN1cnJlbnRLZXkAAAAAAAAAAAAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAVVG90YWxfTG9ja19CbG9ja3NfT2ZfBQAAAApjdXJyZW50S2V5AAAAAAAAAAAACQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAEkRlcG9zaXRfQW1vdW50X09mXwUAAAAKY3VycmVudEtleQAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAAAtSZXdhcmRzX09mXwUAAAAKY3VycmVudEtleQAAAAAAAAAAAAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAdtZXNzYWdlAgAAACg8aDE+Q09ERSBVblN0YWtlZCBTdWNjZXNzZnVsbHkhPC9oMT48YnI+BQAAAANuaWwAAAABaQEAAAAMU2V0RGF5c1JhbmdlAAAAAgAAABJNaW5pbXVtX0RheXNfUmFuZ2UAAAASTWF4aW11bV9EYXlzX1JhbmdlBAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAC2FkbWlucmlnaHRzCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzAgAAABFEQXBwX0FkbWluX1JpZ2h0cwQAAAAMTWluaW11bV9kYXlzAAAAAAAAAAAHBAAAAAxNYXhpbXVtX2RheXMAAAAAAAAAAMgDCQEAAAACIT0AAAACBQAAAAthZG1pbnJpZ2h0cwUAAAANY2FsbGVyYWRkcmVzcwkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAiSSBrbm93IFlvdSBhcmUgbm90IEFuIEFkbWluLiBPbmx5IAUAAAALYWRtaW5yaWdodHMCAAAAISBoYXMgcmlnaHRzIHRvIGNoYW5nZSBEYXlzIFJhbmdlLgMJAABmAAAAAgUAAAAMTWluaW11bV9kYXlzBQAAABJNaW5pbXVtX0RheXNfUmFuZ2UJAAACAAAAAQIAAAA8TWluaW11bSBkYXlzIHJhbmdlIG11c3QgYmUgbW9yZSB0aGFuIDYgYW5kIGluIGJldHdlZW4gNy0yMDAuAwkAAGYAAAACBQAAABJNYXhpbXVtX0RheXNfUmFuZ2UFAAAADE1heGltdW1fZGF5cwkAAAIAAAABAgAAAChNYXhpbXVtIGRheXMgcmFuZ2UgY2FuJ3QgZXhjZWVkIHRoZSAyMDAuAwkAAGYAAAACBQAAABJNaW5pbXVtX0RheXNfUmFuZ2UFAAAAEk1heGltdW1fRGF5c19SYW5nZQkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAXk1pbmltdW0gZGF5cyByYW5nZSBjYW4ndCBiZSBleGNlZWQgdGhlIHZhbHVlIG9mIE1heGltdW0gZGF5cyByYW5nZS4gQ2hvb3NlIHRoZSBSYW5nZSBiZXR3ZWVuIFsJAAGkAAAAAQUAAAAMTWluaW11bV9kYXlzAgAAAAEtCQABpAAAAAEFAAAADE1heGltdW1fZGF5cwIAAAABXQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAASTWluaW11bV9EYXlzX1JhbmdlBQAAABJNaW5pbXVtX0RheXNfUmFuZ2UJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAEk1heGltdW1fRGF5c19SYW5nZQUAAAASTWF4aW11bV9EYXlzX1JhbmdlBQAAAANuaWwAAAABaQEAAAALU2V0Q2xhaW1GZWUAAAABAAAACENsYWltRmVlBAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAC2FkbWlucmlnaHRzCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzAgAAABFEQXBwX0FkbWluX1JpZ2h0cwQAAAARTWluaW11bV9DbGFpbV9mZWUAAAAAAACYloAEAAAAEU1heGltdW1fQ2xhaW1fZmVlAAAAAAAF9eEAAwkBAAAAAiE9AAAAAgUAAAALYWRtaW5yaWdodHMFAAAADWNhbGxlcmFkZHJlc3MJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAIkkga25vdyBZb3UgYXJlIG5vdCBBbiBBZG1pbi4gT25seSAFAAAAC2FkbWlucmlnaHRzAgAAACAgaGFzIHJpZ2h0cyB0byBjaGFuZ2UgQ2xhaW0gRmVlLgMJAABmAAAAAgUAAAARTWluaW11bV9DbGFpbV9mZWUFAAAACENsYWltRmVlCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAABVNaW5pbXVtIENsYWltIGZlZSBpcyAJAAGkAAAAAQUAAAARTWluaW11bV9DbGFpbV9mZWUCAAAAEyB4VVNEIFtpbnQtZm9ybWF0XS4DCQAAZgAAAAIFAAAACENsYWltRmVlBQAAABFNYXhpbXVtX0NsYWltX2ZlZQkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAlTWF4aW11bSBDbGFpbSBmZWUgY2FuJ3QgYmUgbW9yZSB0aGFuIAkAAaQAAAABBQAAABFNYXhpbXVtX0NsYWltX2ZlZQIAAAATIHhVU0QuIFtpbnQtZm9ybWF0XQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAJQ2xhaW1fRmVlBQAAAAhDbGFpbUZlZQUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXldls7N", "height": 2243032, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BhSajcoDX9txW5hB9j3LDxpMYYE2swUEJ9B6QfQtt7Hb Next: ChbtmKJSbUMm55aBeDsxeXwDW4nkoBScaQ6k19HwdBRr Diff:
Old | New | Differences | |
---|---|---|---|
106 | 106 | let I = valueOrErrorMessage(getInteger(addressFromPublicKey(c), ("Deposit_Amount_Of_" + n)), "Your Address not Found on Staking DApp") | |
107 | 107 | let J = 500 | |
108 | 108 | let K = ((G - (fraction(I, 1000000, F) * 19)) / 10000) | |
109 | - | let L = | |
109 | + | let L = getIntegerValue(this, "Claim_Fee") | |
110 | 110 | let m = value(k.payments[0]) | |
111 | 111 | let M = getIntegerValue(this, ("Deposit_Amount_Of_" + n)) | |
112 | 112 | let N = (((getIntegerValue(this, ("Rewards_Of_" + n)) - M) * K) / 10000) | |
145 | 145 | let z = valueOrErrorMessage(getInteger(addressFromPublicKey(c), ("Total_Lock_Blocks_Of_" + n)), "Your Address not Found on Staking DApp") | |
146 | 146 | let A = (z - y) | |
147 | 147 | if ((m.assetId != b)) | |
148 | - | then throw((("Wrong Asset Attached for Payment, please Attach 0. | |
148 | + | then throw((((("Wrong Asset Attached for Payment, please Attach 0." + toString(fraction(1, L, 100000))) + " xUSD (") + toBase58String(b)) + ")")) | |
149 | 149 | else if ((m.amount != L)) | |
150 | - | then throw("Please Attach Exact 0. | |
150 | + | then throw((("Please Attach Exact 0." + toString(fraction(1, L, 100000))) + " xUSD.")) | |
151 | 151 | else if ((getIntegerValue(this, ("Total_Lock_Blocks_Of_" + n)) > height)) | |
152 | 152 | then throw((((("Your " + toString(getIntegerValue(this, ("Rewards_Of_" + n)))) + "/10^8 CODE are Still Maturing. Token will be Unlocked after ") + toString((getIntegerValue(this, ("Total_Lock_Blocks_Of_" + n)) - height))) + " blocks.")) | |
153 | 153 | else if ((M == 0)) | |
173 | 173 | then throw("Minimum days range must be more than 6 and in between 7-200.") | |
174 | 174 | else if ((U > Y)) | |
175 | 175 | then throw("Maximum days range can't exceed the 200.") | |
176 | - | else [IntegerEntry("Minimum_Days_Range", T), IntegerEntry("Maximum_Days_Range", U)] | |
176 | + | else if ((T > U)) | |
177 | + | then throw((((("Minimum days range can't be exceed the value of Maximum days range. Choose the Range between [" + toString(X)) + "-") + toString(Y)) + "]")) | |
178 | + | else [IntegerEntry("Minimum_Days_Range", T), IntegerEntry("Maximum_Days_Range", U)] | |
177 | 179 | } | |
178 | 180 | ||
179 | 181 | ||
180 | - | @Verifier(Z) | |
181 | - | func aa () = sigVerify(Z.bodyBytes, Z.proofs[0], Z.senderPublicKey) | |
182 | + | ||
183 | + | @Callable(k) | |
184 | + | func SetClaimFee (L) = { | |
185 | + | let V = toBase58String(k.caller.bytes) | |
186 | + | let W = getStringValue(this, "DApp_Admin_Rights") | |
187 | + | let Z = 10000000 | |
188 | + | let aa = 100000000 | |
189 | + | if ((W != V)) | |
190 | + | then throw((("I know You are not An Admin. Only " + W) + " has rights to change Claim Fee.")) | |
191 | + | else if ((Z > L)) | |
192 | + | then throw((("Minimum Claim fee is " + toString(Z)) + " xUSD [int-format].")) | |
193 | + | else if ((L > aa)) | |
194 | + | then throw((("Maximum Claim fee can't be more than " + toString(aa)) + " xUSD. [int-format]")) | |
195 | + | else [IntegerEntry("Claim_Fee", L)] | |
196 | + | } | |
197 | + | ||
198 | + | ||
199 | + | @Verifier(ab) | |
200 | + | func ac () = sigVerify(ab.bodyBytes, ab.proofs[0], ab.senderPublicKey) | |
182 | 201 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 4 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = base58'EB4CUQH4fHzzQt9YjcHtA6T7uosHNH9RnQKHgBdZHPCB' | |
5 | 5 | ||
6 | 6 | let b = base58'F3or3Nn6NTcSkRvzqtoCoyuCfdqNSuP8rjLboS2AemPL' | |
7 | 7 | ||
8 | 8 | let c = base58'J3cAptAPQxVqpEz6Rch57JeKpbns48s1a6HoeQG9aX4J' | |
9 | 9 | ||
10 | 10 | let d = base58'6Z73KxcX3sugpiStpSRXxKxTmWqCaLVwFeM6kwyiKVDR' | |
11 | 11 | ||
12 | 12 | let e = 1850000 | |
13 | 13 | ||
14 | 14 | let f = getIntegerValue(this, "Minimum_Days_Range") | |
15 | 15 | ||
16 | 16 | let g = getIntegerValue(this, "Maximum_Days_Range") | |
17 | 17 | ||
18 | 18 | let h = 1440 | |
19 | 19 | ||
20 | 20 | let i = (height - e) | |
21 | 21 | ||
22 | 22 | let j = (fraction(10000000000, 1, i) + 6000) | |
23 | 23 | ||
24 | 24 | @Callable(k) | |
25 | 25 | func Deposit (l) = { | |
26 | 26 | let m = if ((size(k.payments) == 1)) | |
27 | 27 | then k.payments[0] | |
28 | 28 | else throw((("No Payments Attached Please Attach " + toBase58String(a)) + " Asset Only.")) | |
29 | 29 | let n = toBase58String(k.caller.bytes) | |
30 | 30 | let o = ((((j * m.amount) * l) / 365) / 1000) | |
31 | 31 | let p = (i * 100000) | |
32 | 32 | let q = (h * l) | |
33 | 33 | let r = (height + q) | |
34 | 34 | let s = { | |
35 | 35 | let t = getIntegerValue(this, "Total_Txns:") | |
36 | 36 | if ($isInstanceOf(t, "Int")) | |
37 | 37 | then { | |
38 | 38 | let u = t | |
39 | 39 | u | |
40 | 40 | } | |
41 | 41 | else 0 | |
42 | 42 | } | |
43 | 43 | let v = (s + 1) | |
44 | 44 | let w = { | |
45 | 45 | let t = getInteger(this, "Total_Burned_CODE:") | |
46 | 46 | if ($isInstanceOf(t, "Int")) | |
47 | 47 | then { | |
48 | 48 | let u = t | |
49 | 49 | u | |
50 | 50 | } | |
51 | 51 | else 0 | |
52 | 52 | } | |
53 | 53 | let x = (w + m.amount) | |
54 | 54 | let y = valueOrErrorMessage(getInteger(addressFromPublicKey(c), ("Deposit_height_Of_" + n)), "Your Address not Found on Staking DApp") | |
55 | 55 | let z = valueOrErrorMessage(getInteger(addressFromPublicKey(c), ("Total_Lock_Blocks_Of_" + n)), "Your Address not Found on Staking DApp") | |
56 | 56 | let A = (z - y) | |
57 | 57 | let B = { | |
58 | 58 | let t = getInteger(this, ("Deposit_Amount_Of_" + n)) | |
59 | 59 | if ($isInstanceOf(t, "Int")) | |
60 | 60 | then { | |
61 | 61 | let u = t | |
62 | 62 | u | |
63 | 63 | } | |
64 | 64 | else 0 | |
65 | 65 | } | |
66 | 66 | let C = (B + m.amount) | |
67 | 67 | let D = { | |
68 | 68 | let t = getInteger(this, ("No_Of_Deposits_" + n)) | |
69 | 69 | if ($isInstanceOf(t, "Int")) | |
70 | 70 | then { | |
71 | 71 | let u = t | |
72 | 72 | u | |
73 | 73 | } | |
74 | 74 | else 0 | |
75 | 75 | } | |
76 | 76 | let E = (D + 1) | |
77 | 77 | if ((e > height)) | |
78 | 78 | then throw((("DApp is Not Started Yet please Wait until " + toString((e - height))) + " blocks")) | |
79 | 79 | else if ((m.assetId != a)) | |
80 | 80 | then throw((("Incorrect asset attached, please attach " + toBase58String(a)) + " asset only")) | |
81 | 81 | else if ((f >= l)) | |
82 | 82 | then throw(((("Choose Locking days in between " + toString((f + 1))) + " to ") + toString(g))) | |
83 | 83 | else if ((l > g)) | |
84 | 84 | then throw(((((("You Entered days to " + toString(l)) + ", Please Enter no. of days in between ") + toString((f + 1))) + " to ") + toString(g))) | |
85 | 85 | else if ((100000 > m.amount)) | |
86 | 86 | then throw("Please Attach minimum 0.001 CODE Token To Issue More CODE Asset.") | |
87 | 87 | else if ((m.amount > p)) | |
88 | 88 | then throw((("You can attach maximum " + toString(p)) + "/10^8 CODE.")) | |
89 | 89 | else if ((m.amount > o)) | |
90 | 90 | then throw((((("Your Stake Output is lower than input, please increase no. of days (" + toString(o)) + "/") + toString(m.amount)) + ")/10^8 CODE.")) | |
91 | 91 | else if ((A != 129600)) | |
92 | 92 | then throw("You are Not Eligible to Mint CODE. It need minimum 90 Days Staking.") | |
93 | 93 | else if ((D == 1)) | |
94 | 94 | then throw("You Already Have an Active Staking, Please Wait until Mature.") | |
95 | 95 | else [Burn(a, m.amount), IntegerEntry("Total_Burned_CODE:", x), IntegerEntry("Total_Txns:", v), IntegerEntry("Inflation", j), IntegerEntry("Block_Passed", i), IntegerEntry(("No_Of_Deposits_" + n), E), IntegerEntry(("Deposit_height_Of_" + n), height), IntegerEntry(("Total_Lock_Blocks_Of_" + n), r), IntegerEntry(("Deposit_Amount_Of_" + n), C), IntegerEntry(("Rewards_Of_" + n), o), StringEntry("message", "<h1>CODE Staked Successfully!</h1><br>")] | |
96 | 96 | } | |
97 | 97 | ||
98 | 98 | ||
99 | 99 | ||
100 | 100 | @Callable(k) | |
101 | 101 | func Withdraw () = { | |
102 | 102 | let n = toBase58String(k.caller.bytes) | |
103 | 103 | let F = 1200000000000 | |
104 | 104 | let G = 24000000 | |
105 | 105 | let H = 19 | |
106 | 106 | let I = valueOrErrorMessage(getInteger(addressFromPublicKey(c), ("Deposit_Amount_Of_" + n)), "Your Address not Found on Staking DApp") | |
107 | 107 | let J = 500 | |
108 | 108 | let K = ((G - (fraction(I, 1000000, F) * 19)) / 10000) | |
109 | - | let L = | |
109 | + | let L = getIntegerValue(this, "Claim_Fee") | |
110 | 110 | let m = value(k.payments[0]) | |
111 | 111 | let M = getIntegerValue(this, ("Deposit_Amount_Of_" + n)) | |
112 | 112 | let N = (((getIntegerValue(this, ("Rewards_Of_" + n)) - M) * K) / 10000) | |
113 | 113 | let O = (((getIntegerValue(this, ("Rewards_Of_" + n)) - M) * J) / 10000) | |
114 | 114 | let s = { | |
115 | 115 | let t = getIntegerValue(this, "Total_Txns:") | |
116 | 116 | if ($isInstanceOf(t, "Int")) | |
117 | 117 | then { | |
118 | 118 | let u = t | |
119 | 119 | u | |
120 | 120 | } | |
121 | 121 | else 0 | |
122 | 122 | } | |
123 | 123 | let v = (s + 1) | |
124 | 124 | let P = { | |
125 | 125 | let t = getIntegerValue(this, "Total_CODE_Claimed:") | |
126 | 126 | if ($isInstanceOf(t, "Int")) | |
127 | 127 | then { | |
128 | 128 | let u = t | |
129 | 129 | u | |
130 | 130 | } | |
131 | 131 | else 0 | |
132 | 132 | } | |
133 | 133 | let Q = (P + getIntegerValue(this, ("Rewards_Of_" + n))) | |
134 | 134 | let R = { | |
135 | 135 | let t = getIntegerValue(this, "Total_Issued_CODE:") | |
136 | 136 | if ($isInstanceOf(t, "Int")) | |
137 | 137 | then { | |
138 | 138 | let u = t | |
139 | 139 | u | |
140 | 140 | } | |
141 | 141 | else 0 | |
142 | 142 | } | |
143 | 143 | let S = (R + getIntegerValue(this, ("Rewards_Of_" + n))) | |
144 | 144 | let y = valueOrErrorMessage(getInteger(addressFromPublicKey(c), ("Deposit_height_Of_" + n)), "Your Address not Found on Staking DApp") | |
145 | 145 | let z = valueOrErrorMessage(getInteger(addressFromPublicKey(c), ("Total_Lock_Blocks_Of_" + n)), "Your Address not Found on Staking DApp") | |
146 | 146 | let A = (z - y) | |
147 | 147 | if ((m.assetId != b)) | |
148 | - | then throw((("Wrong Asset Attached for Payment, please Attach 0. | |
148 | + | then throw((((("Wrong Asset Attached for Payment, please Attach 0." + toString(fraction(1, L, 100000))) + " xUSD (") + toBase58String(b)) + ")")) | |
149 | 149 | else if ((m.amount != L)) | |
150 | - | then throw("Please Attach Exact 0. | |
150 | + | then throw((("Please Attach Exact 0." + toString(fraction(1, L, 100000))) + " xUSD.")) | |
151 | 151 | else if ((getIntegerValue(this, ("Total_Lock_Blocks_Of_" + n)) > height)) | |
152 | 152 | then throw((((("Your " + toString(getIntegerValue(this, ("Rewards_Of_" + n)))) + "/10^8 CODE are Still Maturing. Token will be Unlocked after ") + toString((getIntegerValue(this, ("Total_Lock_Blocks_Of_" + n)) - height))) + " blocks.")) | |
153 | 153 | else if ((M == 0)) | |
154 | 154 | then throw("You Have Already Withdraw your CODE Amount.") | |
155 | 155 | else if ((A != 129600)) | |
156 | 156 | then throw("You are Not Eligible to Withdraw CODE. It need minimum 90 Days Staking at A4A DApp. Probably you already have Claimed Your Stake or you Overwrite the Smart Contract with less than 90 days.") | |
157 | 157 | else if ((I >= 1199999999999)) | |
158 | 158 | then [IntegerEntry("Total_Txns:", v), IntegerEntry("Total_CODE_Claimed:", Q), IntegerEntry("Total_Issued_CODE:", S), IntegerEntry("Fee_%_Charge", J), IntegerEntry("Fee_Amount", O), Reissue(a, getIntegerValue(this, ("Rewards_Of_" + n)), true), ScriptTransfer(k.caller, (getIntegerValue(this, ("Rewards_Of_" + n)) - O), a), ScriptTransfer(addressFromPublicKey(d), O, a), IntegerEntry(("No_Of_Deposits_" + n), 0), IntegerEntry(("Deposit_height_Of_" + n), 0), IntegerEntry(("Total_Lock_Blocks_Of_" + n), 0), IntegerEntry(("Deposit_Amount_Of_" + n), 0), IntegerEntry(("Rewards_Of_" + n), 0), StringEntry("message", "<h1>CODE UnStaked Successfully!</h1><br>")] | |
159 | 159 | else [IntegerEntry("Total_Txns:", v), IntegerEntry("Total_CODE_Claimed:", Q), IntegerEntry("Total_Issued_CODE:", S), IntegerEntry("Fee_%_Charge", K), IntegerEntry("Fee_Amount", N), Reissue(a, getIntegerValue(this, ("Rewards_Of_" + n)), true), ScriptTransfer(k.caller, (getIntegerValue(this, ("Rewards_Of_" + n)) - N), a), ScriptTransfer(addressFromPublicKey(d), N, a), IntegerEntry(("No_Of_Deposits_" + n), 0), IntegerEntry(("Deposit_height_Of_" + n), 0), IntegerEntry(("Total_Lock_Blocks_Of_" + n), 0), IntegerEntry(("Deposit_Amount_Of_" + n), 0), IntegerEntry(("Rewards_Of_" + n), 0), StringEntry("message", "<h1>CODE UnStaked Successfully!</h1><br>")] | |
160 | 160 | } | |
161 | 161 | ||
162 | 162 | ||
163 | 163 | ||
164 | 164 | @Callable(k) | |
165 | 165 | func SetDaysRange (T,U) = { | |
166 | 166 | let V = toBase58String(k.caller.bytes) | |
167 | 167 | let W = getStringValue(this, "DApp_Admin_Rights") | |
168 | 168 | let X = 7 | |
169 | 169 | let Y = 200 | |
170 | 170 | if ((W != V)) | |
171 | 171 | then throw((("I know You are not An Admin. Only " + W) + " has rights to change Days Range.")) | |
172 | 172 | else if ((X > T)) | |
173 | 173 | then throw("Minimum days range must be more than 6 and in between 7-200.") | |
174 | 174 | else if ((U > Y)) | |
175 | 175 | then throw("Maximum days range can't exceed the 200.") | |
176 | - | else [IntegerEntry("Minimum_Days_Range", T), IntegerEntry("Maximum_Days_Range", U)] | |
176 | + | else if ((T > U)) | |
177 | + | then throw((((("Minimum days range can't be exceed the value of Maximum days range. Choose the Range between [" + toString(X)) + "-") + toString(Y)) + "]")) | |
178 | + | else [IntegerEntry("Minimum_Days_Range", T), IntegerEntry("Maximum_Days_Range", U)] | |
177 | 179 | } | |
178 | 180 | ||
179 | 181 | ||
180 | - | @Verifier(Z) | |
181 | - | func aa () = sigVerify(Z.bodyBytes, Z.proofs[0], Z.senderPublicKey) | |
182 | + | ||
183 | + | @Callable(k) | |
184 | + | func SetClaimFee (L) = { | |
185 | + | let V = toBase58String(k.caller.bytes) | |
186 | + | let W = getStringValue(this, "DApp_Admin_Rights") | |
187 | + | let Z = 10000000 | |
188 | + | let aa = 100000000 | |
189 | + | if ((W != V)) | |
190 | + | then throw((("I know You are not An Admin. Only " + W) + " has rights to change Claim Fee.")) | |
191 | + | else if ((Z > L)) | |
192 | + | then throw((("Minimum Claim fee is " + toString(Z)) + " xUSD [int-format].")) | |
193 | + | else if ((L > aa)) | |
194 | + | then throw((("Maximum Claim fee can't be more than " + toString(aa)) + " xUSD. [int-format]")) | |
195 | + | else [IntegerEntry("Claim_Fee", L)] | |
196 | + | } | |
197 | + | ||
198 | + | ||
199 | + | @Verifier(ab) | |
200 | + | func ac () = sigVerify(ab.bodyBytes, ab.proofs[0], ab.senderPublicKey) | |
182 | 201 |
github/deemru/w8io/169f3d6 66.23 ms ◑![]()