tx · 4HguWLWWXqu8FLj3BrPRyquLjCwQ6aHsgWdpET9SBHbe

3N9eE86dXUm7rfc2WWCMLHkaEM4Y8yoNj7u:  -0.01440000 Waves

2021.05.29 14:25 [1546895] smart account 3N9eE86dXUm7rfc2WWCMLHkaEM4Y8yoNj7u > SELF 0.00000000 Waves

{ "type": 13, "id": "4HguWLWWXqu8FLj3BrPRyquLjCwQ6aHsgWdpET9SBHbe", "fee": 1440000, "feeAssetId": null, "timestamp": 1622287537760, "version": 2, "chainId": 84, "sender": "3N9eE86dXUm7rfc2WWCMLHkaEM4Y8yoNj7u", "senderPublicKey": "FFDorDp8bC9dyUK2w8hYPWPVEcbbk9zYkpHn3gcq9svn", "proofs": [ "2eQFNYJR9wR5TQnYYKDfKZcnozo7R7J592KFC6swcy6Y2bZQf2dxeiPWSDFhodeYJmwoHMBTjbYWkioARVEKNhDg" ], "script": "base64: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AABnAAAAAgUAAAAQVXNlclJlZnNOdW1WYWx1ZQUAAAAGbWlucmVmCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAhVc2VyUHVzaAUAAAANVXNlclB1c2h2YWx1ZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAASSGlnaGVzdFB1c2hBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAC0hpZ2hlc3RQdXNoBQAAAA1Vc2VyUHVzaHZhbHVlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABFVc2VyTGFzdFB1c2hCbG9jawUAAAAGaGVpZ2h0CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAtQcml6ZUhlaWdodAUAAAATUHJpemVIZWlnaHRWYWx1ZU5ldwkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAFRGVsYXkFAAAACE5ld0RlbGF5CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAZEZXZCb3gFAAAADERldkJveEFtb3VudAUAAAADbmlsCQAAAgAAAAECAAAAT1lvdSBoYXZlIHRvIGhhdmUgMTAgcmVmZXJyYWxzIGFscmVhZHkgc3Rha2luZyBmb3IgYSBtaW5pbXVtIG9mIDEwIGRheXMsIHRvIHB1c2gEAAAAA3R4dAMJAABmAAAAAgUAAAAQSGlnaGVzdFB1c2hWYWx1ZQAAAAAAAAAAAAIAAABPWW91IGNhbm5vdCBQdXNoIGFmdGVyIHJld2FyZGluZyBQcml6ZSBhbmQgYmVmb3JlIE9uZSBkYXkgaGFzIHBhc3NlZCBhZnRlciBhd2FyZAIAAAAQVW5leHBlY3RlZCBlcnJvcgkAAAIAAAABBQAAAAN0eHQJAAACAAAAAQIAAABOWW91IGNhbm5vdCBwdXNoIGJlZm9yZSB0aGUgcmV3YXJkIGlzIHVubG9ja2VkLCBubyByZXdhcmQgaGFzIGJlZW4gZGV0ZWN0ZWQgeWV0CQAAAgAAAAECAAAAQ1lvdXIgcHVzaCBpbiB0cm9pa2FuIHRva2VuLCBzaG91bGQg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AGYAAAACBQAAABhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMAAAAAAAAAAAoJAABoAAAAAgkAAGgAAAACAAAAAAAAACcQBQAAABhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMJAABkAAAAAgAAAAAAAAAAAQkAAGkAAAACBQAAABRuZXdBbW91bnRTdGFrZWRUb2tlbgUAAAAMU3Rha2VCYWxhbmNlCQAAaAAAAAIAAAAAAAAAJxAJAABkAAAAAgAAAAAAAAAAAQkAAGkAAAACBQAAABRuZXdBbW91bnRTdGFrZWRUb2tlbgUAAAAMU3Rha2VCYWxhbmNlBAAAAAxVc2VyQVBZVmFsdWUDCQAAZgAAAAIFAAAAGGN1cnJlbnRBbW91bnRHb3Zlcm5Ub2tlbgAAAAAAAAAAAAkAAGkAAAACCQAAaAAAAAIAAAAAAAAAAGQFAAAABlJld2FyZAUAAAAYY3VycmVudEFtb3VudEdvdmVyblRva2VuAAAAAAAAAAAABAAAABRuZXdBbW91bnRHb3Zlcm5Ub2tlbgkAAGQAAAACBQAAABhjdXJyZW50QW1vdW50R292ZXJuVG9rZW4FAAAABlJld2FyZAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAElVzZXJHb3Zlcm5Ub2tlbktleQUAAAAUbmV3QW1vdW50R292ZXJuVG9rZW4JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAElVzZXJTdGFrZWRUb2tlbktleQUAAAAUbmV3QW1vdW50U3Rha2VkVG9rZW4JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAGFVzZXJTdGFrZVRyYW5zYWN0aW9uc0tleQUAAAAYTmV3VXNlclN0YWtlVHJhbnNhY3Rpb25zCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAxTdGFrZUJhbGFuY2UFAAAAElN0YWtlQmFsYW5jZUFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAALUHJpemVIZWlnaHQFAAAAEFByaXplSGVpZ2h0VmFsdWUJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAB1VzZXJBUFkFAAAADFVzZXJBUFlWYWx1ZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASVXNlckxhc3RTdGFrZUJsb2NrBQAAABpVc2VyTGFzdFN0YWtlQmxvY2tOZXdWYWx1ZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAIVXNlclB1c2gFAAAADVVzZXJQdXNoVmFsdWUFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAABlJld2FyZAUAAAALR292ZXJuVG9rZW4FAAAAA25pbAkAAAIAAAABAgAAABtDYW4gZGVwb3NpdCBvbmx5IFN0YWtlVG9rZW4AAAABaQEAAAATV2l0aGRyYXdTdGFrZWRGdW5kcwAAAAEAAAAGYW1vdW50BAAAAAtTdGFrZWRUb2tlbgEAAAAgtdEoYbzmBKc83jS/KKdye173/DgIlmcoGG447AQsIbIEAAAAC0dvdmVyblRva2VuAQAAACAQgPg4uhu9buXgRp+zjv1718k6u+xhGgBJPw0oxb5duQQAAAASVXNlckxhc3RTdGFrZUJsb2NrCQABLAAAAAIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwIAAAATX1VzZXJMYXN0U3Rha2VCbG9jawQAAAASVXNlclN0YWtlZFRva2VuS2V5CQABLAAAAAIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwIAAAAIX1N0YWtpbmcEAAAAElVzZXJHb3Zlcm5Ub2tlbktleQkAASwAAAACCQABLAAAAAIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwIAAAABXwkAAlgAAAABBQAAAAtHb3Zlcm5Ub2tlbgQAAAAaQ29udHJhY3RXYWxsZXRTdGFrZUJhbGFuY2UJAAPrAAAAAgUAAAAEdGhpcwUAAAALU3Rha2VkVG9rZW4EAAAAF1VzZXJMYXN0U3Rha2VCbG9ja1ZhbHVlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAElVzZXJMYXN0U3Rha2VCbG9jawMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAxTdGFrZUJhbGFuY2UEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAMU3Rha2VCYWxhbmNlAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAC1ByaXplQW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAB0Z1bmRCb3gDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAVSGVpZ2h0VHJhbnNhY3RGdW5kQm94BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAC1ByaXplSGVpZ2h0AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAEFByaXplSGVpZ2h0VmFsdWUDAwkAAAAAAAACBQAAABVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAAAAAAAAAAJAAAAAAAAAgUAAAALUHJpemVBbW91bnQAAAAAAAAAAAAHAAAAAAAAAAAAAwMJAAAAAAAAAgUAAAAVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAAAAAAAAAACQEAAAACIT0AAAACBQAAAAtQcml6ZUFtb3VudAAAAAAAAAAAAAcFAAAABmhlaWdodAMDCQEAAAACIT0AAAACBQAAABVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAAAAAAAAAAJAQAAAAIhPQAAAAIFAAAAC1ByaXplQW1vdW50AAAAAAAAAAAABwUAAAAVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAAAAAAAAAABAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWN1cnJlbnRBbW91bnQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAASVXNlclN0YWtlZFRva2VuS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAACW5ld0Ftb3VudAkAAGUAAAACBQAAAA1jdXJyZW50QW1vdW50BQAAAAZhbW91bnQEAAAAElN0YWtlQmFsYW5jZUFtb3VudAkAAGUAAAACBQAAAAxTdGFrZUJhbGFuY2UFAAAABmFtb3VudAQAAAAaVXNlckxhc3RTdGFrZUJsb2NrTmV3VmFsdWUDCQAAAAAAAAIFAAAAElN0YWtlQmFsYW5jZUFtb3VudAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAXVXNlckxhc3RTdGFrZUJsb2NrVmFsdWUDCQAAZgAAAAIAAAAAAAAAAAAFAAAABmFtb3VudAkAAAIAAAABAgAAAB5DYW4ndCB3aXRoZHJhdyBuZWdhdGl2ZSBhbW91bnQDCQAAZgAAAAIAAAAAAAAAAAAFAAAACW5ld0Ftb3VudAkAAAIAAAABCQABLAAAAAICAAAAQVVzZXIgY2Fubm90IHdpdGhkcmF3IG1vcmUgdGhhbiBkZXBvc2l0ZWQgZnVuZHMsIFlvdXIgZGVwb3NpdCBpczogCQABpAAAAAEJAABpAAAAAgUAAAANY3VycmVudEFtb3VudAAAAAAABfXhAAMJAABmAAAAAgAAAAAABfXhAAkAA+sAAAACBQAAAAR0aGlzBQAAAAtHb3Zlcm5Ub2tlbgkAAAIAAAABCQABLAAAAAICAAAAH05vdCBlbm91Z2ggVHJvaWthIEluIENvbnRyYWN0OiAJAAGkAAAAAQkAAGkAAAACCQAD6wAAAAIFAAAABHRoaXMFAAAAC0dvdmVyblRva2VuAAAAAAAF9eEACQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASVXNlckdvdmVyblRva2VuS2V5AAAAAAAF9eEACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABJVc2VyU3Rha2VkVG9rZW5LZXkFAAAACW5ld0Ftb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAMU3Rha2VCYWxhbmNlBQAAABJTdGFrZUJhbGFuY2VBbW91bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAC1ByaXplSGVpZ2h0BQAAABBQcml6ZUhlaWdodFZhbHVlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABJVc2VyTGFzdFN0YWtlQmxvY2sFAAAAGlVzZXJMYXN0U3Rha2VCbG9ja05ld1ZhbHVlBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyAAAAAAAF9eEABQAAAAtHb3Zlcm5Ub2tlbgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAABmFtb3VudAUAAAALU3Rha2VkVG9rZW4FAAAAA25pbAAAAAFpAQAAABNIYXJ2ZXN0R292ZXJuVG9pa2VuAAAAAQAAAAZhbW91bnQEAAAAC1N0YWtlZFRva2VuAQAAACC10ShhvOYEpzzeNL8op3J7Xvf8OAiWZygYbjjsBCwhsgQAAAALR292ZXJuVG9rZW4BAAAAIBCA+Di6G71u5eBGn7OO/XvXyTq77GEaAEk/DSjFvl25BAAAABpDb250cmFjdFdhbGxldFN0YWtlQmFsYW5jZQkAA+sAAAACBQAAAAR0aGlzBQAAAAtTdGFrZWRUb2tlbgQAAAASVXNlckdvdmVyblRva2VuS2V5CQABLAAAAAIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwIAAAAJX0Vhcm5pbmdzBAAAAAxTdGFrZUJhbGFuY2UEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAMU3Rha2VCYWxhbmNlAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAC1ByaXplQW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAB0Z1bmRCb3gDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAVSGVpZ2h0VHJhbnNhY3RGdW5kQm94BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAC1ByaXplSGVpZ2h0AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAEFByaXplSGVpZ2h0VmFsdWUDAwkAAAAAAAACBQAAABVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAAAAAAAAAAJAAAAAAAAAgUAAAALUHJpemVBbW91bnQAAAAAAAAAAAAHAAAAAAAAAAAAAwMJAAAAAAAAAgUAAAAVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAAAAAAAAAACQEAAAACIT0AAAACBQAAAAtQcml6ZUFtb3VudAAAAAAAAAAAAAcFAAAABmhlaWdodAMDCQEAAAACIT0AAAACBQAAABVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAAAAAAAAAAJAQAAAAIhPQAAAAIFAAAAC1ByaXplQW1vdW50AAAAAAAAAAAABwUAAAAVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAAAAAAAAAABAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWN1cnJlbnRBbW91bnQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAASVXNlckdvdmVyblRva2VuS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAACW5ld0Ftb3VudAkAAGUAAAACBQAAAA1jdXJyZW50QW1vdW50BQAAAAZhbW91bnQDCQAAZgAAAAIAAAAAAAAAAAAFAAAABmFtb3VudAkAAAIAAAABAgAAAB5DYW4ndCB3aXRoZHJhdyBuZWdhdGl2ZSBhbW91bnQDCQAAZgAAAAIAAAAAAAAAAAAFAAAACW5ld0Ftb3VudAkAAAIAAAABCQABLAAAAAICAAAAQVVzZXIgY2Fubm90IHdpdGhkcmF3IG1vcmUgdGhhbiBkZXBvc2l0ZWQgZnVuZHMsIFlvdXIgZGVwb3NpdCBpczogCQABpAAAAAEJAABpAAAAAgUAAAANY3VycmVudEFtb3VudAAAAAAABfXhAAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAElVzZXJHb3Zlcm5Ub2tlbktleQUAAAAJbmV3QW1vdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAtQcml6ZUhlaWdodAUAAAAQUHJpemVIZWlnaHRWYWx1ZQUAAAADbmlsCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAGYW1vdW50BQAAAAtHb3Zlcm5Ub2tlbgUAAAADbmlsAAAAAWkBAAAACmRlbGF5cHJpemUAAAAABAAAAAtTdGFrZWRUb2tlbgEAAAAgtdEoYbzmBKc83jS/KKdye173/DgIlmcoGG447AQsIbIEAAAAC0dvdmVyblRva2VuAQAAACAQgPg4uhu9buXgRp+zjv1718k6u+xhGgBJPw0oxb5duQQAAAAJRGVsYXlEYXlzAAAAAAAAAAABBAAAABJVc2VyR292ZXJuVG9rZW5LZXkJAAEsAAAAAgkAASwAAAACCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMCAAAAAV8JAAJYAAAAAQUAAAALR292ZXJuVG9rZW4EAAAAGFVzZXJXYWxsZXRTR292ZXJuQmFsYW5jZQkAA+sAAAACCQEAAAAHQWRkcmVzcwAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMFAAAAC0dvdmVyblRva2VuBAAAABpDb250cmFjdFdhbGxldFN0YWtlQmFsYW5jZQkAA+sAAAACBQAAAAR0aGlzBQAAAAtTdGFrZWRUb2tlbgQAAAAMU3Rha2VCYWxhbmNlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAADFN0YWtlQmFsYW5jZQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAtQcml6ZUFtb3VudAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAAAdGdW5kQm94AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAFUhlaWdodFRyYW5zYWN0RnVuZEJveAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAAAtQcml6ZUhlaWdodAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABBQcml6ZUhlaWdodFZhbHVlAwMJAAAAAAAAAgUAAAAVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAAAAAAAAAACQAAAAAAAAIFAAAAC1ByaXplQW1vdW50AAAAAAAAAAAABwAAAAAAAAAAAAMDCQAAAAAAAAIFAAAAFUhlaWdodFRyYW5zYWN0RnVuZEJveAAAAAAAAAAAAAkBAAAAAiE9AAAAAgUAAAALUHJpemVBbW91bnQAAAAAAAAAAAAHBQAAAAZoZWlnaHQDAwkBAAAAAiE9AAAAAgUAAAAVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAAAAAAAAAACQEAAAACIT0AAAACBQAAAAtQcml6ZUFtb3VudAAAAAAAAAAAAAcFAAAAFUhlaWdodFRyYW5zYWN0RnVuZEJveAAAAAAAAAAAAAQAAAALQWN0dWFsRGVsYXkEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAFRGVsYXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAPQWN0dWFsRGVsYXlDb3N0BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAACURlbGF5Q29zdAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAKBAAAAANwbXQJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAQAAAANRGV2Qm94QmFsYW5jZQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAAAZEZXZCb3gDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAMDCQEAAAAJaXNEZWZpbmVkAAAAAQgFAAAAA3BtdAAAAAdhc3NldElkCQAAAAAAAAIJAQAAAAdleHRyYWN0AAAAAQgFAAAAA3BtdAAAAAdhc3NldElkBQAAAAtHb3Zlcm5Ub2tlbgcDCQAAZgAAAAIFAAAAC1ByaXplQW1vdW50AAAAAAAAAAAABAAAABVVc2VyR292ZXJuVG9rZW5BbW91bnQIBQAAAANwbXQAAAAGYW1vdW50BAAAAAxEZXZCb3hBbW91bnQJAABkAAAAAgUAAAANRGV2Qm94QmFsYW5jZQkAAGkAAAACCQAAaAAAAAIIBQAAAANwbXQAAAAGYW1vdW50AAAAAAAAAAAFAAAAAAAAAAPoBAAAAAxOZXdEZWxheUNvc3QDCQAAAAAAAAIFAAAAD0FjdHVhbERlbGF5Q29zdAAAAAAAAAAAAAAAAAAAO5rKAAkAAGgAAAACAAAAAAAAAAACBQAAAA9BY3R1YWxEZWxheUNvc3QDCQAAZwAAAAIFAAAAFVVzZXJHb3Zlcm5Ub2tlbkFtb3VudAUAAAAMTmV3RGVsYXlDb3N0BAAAAAhOZXdEZWxheQkAAGQAAAACBQAAAAtBY3R1YWxEZWxheQkAAGgAAAACAAAAAAAAAAWgBQAAAAlEZWxheURheXMJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAABURlbGF5BQAAAAhOZXdEZWxheQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAJRGVsYXlDb3N0BQAAAAxOZXdEZWxheUNvc3QJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAC1ByaXplSGVpZ2h0BQAAABBQcml6ZUhlaWdodFZhbHVlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAZEZXZCb3gFAAAADERldkJveEFtb3VudAUAAAADbmlsCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAElUbyBkZWxheSB0aGUgcmVsZWFzZSBvZiB0aGUgcmV3YXJkIE9ORSBEQVkgbGF0ZXIgdGhhbiBleHBlY3RlZCwgeW91IG5lZWQgCQABpAAAAAEFAAAADE5ld0RlbGF5Q29zdAIAAAAHVFJPSUtBcwkAAAIAAAABAgAAAF5Zb3UgY2Fubm90IGRlbGF5IHRoZSByZXdhcmQgYmVmb3JlIHJld2FyZCBpcyByZWNlaXZlZCEgUGxlYXNlIHdhaXQgdW50aWwgYSByZXdhcmQgaXMgYXZhaWxhYmxlCQAAAgAAAAECAAAAKUNhbiBVc2Ugb25seSBUcm9pa2EgVG9rZW4gdG8gRGVsYXkgUmV3YXJkAAAAAWkBAAAACkNsYWltUHJpemUAAAAABAAAAAtTdGFrZWRUb2tlbgEAAAAgtdEoYbzmBKc83jS/KKdye173/DgIlmcoGG447AQsIbIEAAAAC0dvdmVyblRva2VuAQAAACAQgPg4uhu9buXgRp+zjv1718k6u+xhGgBJPw0oxb5duQQAAAASVXNlclN0YWtlZFRva2VuS2V5CQABLAAAAAIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwIAAAAIX1N0YWtpbmcEAAAACFVzZXJQdXNoCQABLAAAAAIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwIAAAAFX1B1c2gEAAAAElVzZXJMYXN0U3Rha2VCbG9jawkAASwAAAACCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMCAAAAE19Vc2VyTGFzdFN0YWtlQmxvY2sEAAAADW1pblN0YWtlQmxvY2sAAAAAAAAAAAcEAAAABm1pbnJlZgAAAAAAAAAAAAQAAAAXQ29udHJhY3RHb3ZUb2tlbkJhbGFuY2UJAAPrAAAAAgUAAAAEdGhpcwUAAAALR292ZXJuVG9rZW4EAAAAGkNvbnRyYWN0V2FsbGV0U3Rha2VCYWxhbmNlCQAD6wAAAAIFAAAABHRoaXMFAAAAC1N0YWtlZFRva2VuBAAAAAxTdGFrZUJhbGFuY2UEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAMU3Rha2VCYWxhbmNlAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAC1ByaXplQW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAB0Z1bmRCb3gDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAANVXNlclB1c2hWYWx1ZQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAAhVc2VyUHVzaAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABdVc2VyTGFzdFN0YWtlQmxvY2tWYWx1ZQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAABJVc2VyTGFzdFN0YWtlQmxvY2sDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAVVXNlclN0YWtlZFRva2VuQW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAElVzZXJTdGFrZWRUb2tlbktleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAtBY3R1YWxEZWxheQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAAAVEZWxheQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAtQcml6ZVdpbm5lcgkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwIAAAASSGlnaGVzdFB1c2hBZGRyZXNzBAAAAAtQcml6ZUhlaWdodAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAAAtQcml6ZUhlaWdodAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABBIaWdoZXN0UHVzaFZhbHVlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAC0hpZ2hlc3RQdXNoAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAC1VzZXJSZWZzTnVtCQABLAAAAAIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwIAAAAFX3JlZnMEAAAAEFVzZXJSZWZzTnVtVmFsdWUEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAALVXNlclJlZnNOdW0DCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAMDCQAAAAAAAAIFAAAAC1ByaXplQW1vdW50AAAAAAAAAAAABgkAAGYAAAACAAAAAAJUC+QABQAAABdDb250cmFjdEdvdlRva2VuQmFsYW5jZQkAAAIAAAABAgAAAElObyBwcml6ZSB0byBDbGFpbSBvciBOb3QgZW5vdWdoIEdvdmVybiBUb2tlbiBlbiBDb250cmFjdCAoTWluIDEwMCBUcm9pa2EpAwkBAAAAAiE9AAAAAgkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBQAAAAtQcml6ZVdpbm5lcgkAAAIAAAABAgAAADZZb3UgYXJlIG5vdCB0aGUgd2lubmVyIGhlbmNlIGNhbm5vdCBjbGFpbSB0aGUgcmV3YXJkICADAwkAAGYAAAACAAAAAAAF9eEABQAAABVVc2VyU3Rha2VkVG9rZW5BbW91bnQJAABmAAAAAgkAAGgAAAACAAAAAAAAAAWgBQAAAA1taW5TdGFrZUJsb2NrBQAAABdVc2VyTGFzdFN0YWtlQmxvY2tWYWx1ZQcJAAACAAAAAQIAAAAuWW91IGhhdmUgdG8gU3Rha2UgQVNJTUkgVG9rZW4gdG8gY2xhaW0gcmV3YXJkIAMDCQAAZgAAAAIFAAAABmhlaWdodAkAAGQAAAACBQAAAAtQcml6ZUhlaWdodAUAAAALQWN0dWFsRGVsYXkJAABnAAAAAgUAAAANVXNlclB1c2hWYWx1ZQUAAAAQSGlnaGVzdFB1c2hWYWx1ZQcDCQAAZwAAAAIFAAAAEFVzZXJSZWZzTnVtVmFsdWUFAAAABm1pbnJlZgkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAC1ByaXplV2lubmVyBQAAAAtQcml6ZUFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAHRnVuZEJveAAAAAAAAAAAAAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAALSGlnaGVzdFB1c2gAAAAAAAAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAACFVzZXJQdXNoAAAAAAAAAAAACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAABJIaWdoZXN0UHVzaEFkZHJlc3MCAAAAAAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAALUHJpemVIZWlnaHQAAAAAAAAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAABURlbGF5AAAAAAAAAAAACQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAlEZWxheUNvc3QAAAAAAAAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAACkxhc3RXaW5uZXIFAAAAC1ByaXplV2lubmVyCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAlMYXN0UHJpemUFAAAAC1ByaXplQW1vdW50BQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAtQcml6ZUFtb3VudAUAAAALU3Rha2VkVG9rZW4JAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyAAAAAAA7msoABQAAAAtHb3Zlcm5Ub2tlbgUAAAADbmlsCQAAAgAAAAECAAAAWVlvdSBoYXZlIHRvIGhhdmUgMTAgcmVmZXJyYWxzIGFscmVhZHkgc3Rha2luZyBmb3IgYSBtaW5pbXVtIG9mIDEwIGRheXMgdG8gQ2xhaW0gdGhlIHByaXplCQAAAgAAAAECAAAAYVlvdSBoYXZlIHRvIGJlIHRoZSB1c2VyIHdpdGggdGhlIGhpZ2hlc3QgUHVzaCBhbmQgd2FpdCB0aWxsIGNvdW50b3duIGlzIGZpbmlzaGVkLCB0byBjbGFpbSBSZXdhcmQAAAABaQEAAAAJQWRkbWVudG9yAAAAAQAAAAZNZW50b3IEAAAAC1N0YWtlZFRva2VuAQAAACC10ShhvOYEpzzeNL8op3J7Xvf8OAiWZygYbjjsBCwhsgQAAAALR292ZXJuVG9rZW4BAAAAIBCA+Di6G71u5eBGn7OO/XvXyTq77GEaAEk/DSjFvl25BAAAABFVc2VyTWVudG9yQWRkcmVzcwkAASwAAAACCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMCAAAAB19NZW50b3IDCQEAAAACIT0AAAACBQAAAAZNZW50b3ICAAAAAAkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAARVXNlck1lbnRvckFkZHJlc3MFAAAABk1lbnRvcgUAAAADbmlsCQAAAgAAAAECAAAAIE1lbnRvcidzIEFkZHJlc3MgY2Fubm90IGJlIGVtcHR5AAAAAMPbdbU=", "height": 1546895, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9mVaQNWXxjxh9eZZgd89ui1jY63jxmxkvVkbx1KiWhef Next: 7sxo9pNpmtYVDL3BkiXXeK3fLcWMRevQkGoaB7yb8yQf Diff:
OldNewDifferences
44
55
66 @Callable(a)
7-func ResetAccount () = {
8- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
7+func DevWithdraw () = {
8+ let b = toBase58String(a.caller.bytes)
99 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
10- let d = (toBase58String(a.caller.bytes) + "_Push")
11- WriteSet([DataEntry("DelayCost", 0), DataEntry("Delay", 0)])
10+ if ((b == "3P74buHt98BnojFcaREJZtb98KDyUmZGemJ"))
11+ then {
12+ let d = {
13+ let e = getInteger(this, "DevBox")
14+ if ($isInstanceOf(e, "Int"))
15+ then {
16+ let f = e
17+ f
18+ }
19+ else 0
20+ }
21+ if ((0 > d))
22+ then throw("Not enough balance")
23+ else ScriptResult(WriteSet([DataEntry("DevBox", 0)]), TransferSet([ScriptTransfer(a.caller, d, c)]))
24+ }
25+ else throw("You cannot withdraw as your are not the Dev.")
1226 }
1327
1428
1529
1630 @Callable(a)
1731 func PushReward () = {
18- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
32+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
1933 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
20- let e = 10
21- let f = 0
22- let g = 20
23- let h = extract(a.payment)
24- if (if ((h.amount > 0))
25- then (h.assetId == c)
26- else false)
27- then {
28- let d = (toBase58String(a.caller.bytes) + "_Push")
29- let i = (toBase58String(a.caller.bytes) + "_UserLastPushBlock")
30- let j = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
31- let k = (toBase58String(a.caller.bytes) + "_Staking")
32- let l = assetBalance(this, b)
33- let m = {
34- let n = getInteger(this, "StakeBalance")
35- if ($isInstanceOf(n, "Int"))
36- then {
37- let o = n
38- o
39- }
40- else 0
34+ let h = 10
35+ let i = 7
36+ let j = 1440
37+ let k = 0
38+ let l = assetBalance(Address(a.caller.bytes), c)
39+ let m = extract(a.payment)
40+ let n = (toBase58String(a.caller.bytes) + "_Push")
41+ let o = {
42+ let e = getInteger(this, n)
43+ if ($isInstanceOf(e, "Int"))
44+ then {
45+ let f = e
46+ f
4147 }
42- let p = (l - m)
43- let q = {
44- let n = getInteger(this, "PrizeHeight")
45- if ($isInstanceOf(n, "Int"))
46- then {
47- let o = n
48- o
49- }
50- else 0
48+ else 0
49+ }
50+ let p = (toBase58String(a.caller.bytes) + "_refs")
51+ let q = {
52+ let e = getInteger(this, p)
53+ if ($isInstanceOf(e, "Int"))
54+ then {
55+ let f = e
56+ f
5157 }
52- let r = if (if ((q == 0))
53- then (p == 0)
54- else false)
55- then 0
56- else if (if ((q == 0))
57- then (p != 0)
58+ else 0
59+ }
60+ let r = {
61+ let e = getInteger(this, "HighestPush")
62+ if ($isInstanceOf(e, "Int"))
63+ then {
64+ let f = e
65+ f
66+ }
67+ else 0
68+ }
69+ if ((l > m.amount))
70+ then if (if (((m.amount + o) > r))
71+ then (m.assetId == c)
72+ else false)
73+ then {
74+ let s = (toBase58String(a.caller.bytes) + "_UserLastPushBlock")
75+ let t = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
76+ let u = (toBase58String(a.caller.bytes) + "_Staking")
77+ let v = assetBalance(this, g)
78+ let w = {
79+ let e = getInteger(this, "StakeBalance")
80+ if ($isInstanceOf(e, "Int"))
81+ then {
82+ let f = e
83+ f
84+ }
85+ else 0
86+ }
87+ let x = {
88+ let e = getInteger(this, "FundBox")
89+ if ($isInstanceOf(e, "Int"))
90+ then {
91+ let f = e
92+ f
93+ }
94+ else 0
95+ }
96+ let y = {
97+ let e = getInteger(this, "PrizeHeight")
98+ if ($isInstanceOf(e, "Int"))
99+ then {
100+ let f = e
101+ f
102+ }
103+ else 0
104+ }
105+ let z = if (if ((y == 0))
106+ then (x == 0)
107+ else false)
108+ then 0
109+ else if (if ((y == 0))
110+ then (x != 0)
111+ else false)
112+ then height
113+ else if (if ((y != 0))
114+ then (x != 0)
115+ else false)
116+ then y
117+ else 0
118+ let A = {
119+ let e = getInteger(this, "Delay")
120+ if ($isInstanceOf(e, "Int"))
121+ then {
122+ let f = e
123+ f
124+ }
125+ else 0
126+ }
127+ let B = (A + j)
128+ let C = {
129+ let e = getInteger(this, "HighestPushAddress")
130+ if ($isInstanceOf(e, "Int"))
131+ then {
132+ let f = e
133+ f
134+ }
135+ else 0
136+ }
137+ let D = {
138+ let e = getInteger(this, s)
139+ if ($isInstanceOf(e, "Int"))
140+ then {
141+ let f = e
142+ f
143+ }
144+ else 0
145+ }
146+ let E = {
147+ let e = getInteger(this, t)
148+ if ($isInstanceOf(e, "Int"))
149+ then {
150+ let f = e
151+ f
152+ }
153+ else 0
154+ }
155+ let F = {
156+ let e = getInteger(this, u)
157+ if ($isInstanceOf(e, "Int"))
158+ then {
159+ let f = e
160+ f
161+ }
162+ else 0
163+ }
164+ let G = {
165+ let e = getInteger(this, "DevBox")
166+ if ($isInstanceOf(e, "Int"))
167+ then {
168+ let f = e
169+ f
170+ }
171+ else 0
172+ }
173+ let d = (G + ((m.amount * 5) / 1000))
174+ let H = (m.amount + o)
175+ let I = if (if ((height > ((z + B) + 1440)))
176+ then (r > 0)
58177 else false)
59178 then height
60- else if (if ((q != 0))
61- then (p != 0)
62- else false)
63- then q
64- else 0
65- let s = {
66- let n = getInteger(this, "HighestPush")
67- if ($isInstanceOf(n, "Int"))
68- then {
69- let o = n
70- o
71- }
72- else 0
179+ else z
180+ if (if ((H > 0))
181+ then ((height - E) > (1440 * i))
182+ else false)
183+ then if (((height - D) > h))
184+ then if ((F > 0))
185+ then if ((H > r))
186+ then if ((x > 0))
187+ then if (if (if (if (((I + B) > height))
188+ then true
189+ else (height > ((I + B) + 1440)))
190+ then (r > 0)
191+ else false)
192+ then true
193+ else (r == 0))
194+ then if ((q >= k))
195+ then WriteSet([DataEntry(n, H), DataEntry("HighestPushAddress", toBase58String(a.caller.bytes)), DataEntry("HighestPush", H), DataEntry(s, height), DataEntry("PrizeHeight", I), DataEntry("Delay", B), DataEntry("DevBox", d)])
196+ else throw("You have to have 10 referrals already staking for a minimum of 10 days, to push")
197+ else {
198+ let J = if ((r > 0))
199+ then "You cannot Push after rewarding Prize and before One day has passed after award"
200+ else "Unexpected error"
201+ throw(J)
202+ }
203+ else throw("You cannot push before the reward is unlocked, no reward has been detected yet")
204+ else throw("Your push in troikan token, should be Higher than last Highest Push")
205+ else throw("To be able to participate in Pushing for the reward you need to Stake ASIMIs in the dApp")
206+ else throw("You have to wait 10min before you can make a new Push")
207+ else throw(("Your Push dot not comply one of the following conditions: " + "1. Positive Value for Push in Troikan Toke
208+ 2. Must Staked ASIMI Token for a minimum of week "))
73209 }
74- let t = {
75- let n = getInteger(this, d)
76- if ($isInstanceOf(n, "Int"))
77- then {
78- let o = n
79- o
80- }
81- else 0
82- }
83- let u = {
84- let n = getInteger(this, "Delay")
85- if ($isInstanceOf(n, "Int"))
86- then {
87- let o = n
88- o
89- }
90- else 0
91- }
92- let v = (u + g)
93- let w = {
94- let n = getInteger(this, "HighestPushAddress")
95- if ($isInstanceOf(n, "Int"))
96- then {
97- let o = n
98- o
99- }
100- else 0
101- }
102- let x = {
103- let n = getInteger(this, i)
104- if ($isInstanceOf(n, "Int"))
105- then {
106- let o = n
107- o
108- }
109- else 0
110- }
111- let y = {
112- let n = getInteger(this, j)
113- if ($isInstanceOf(n, "Int"))
114- then {
115- let o = n
116- o
117- }
118- else 0
119- }
120- let z = {
121- let n = getInteger(this, k)
122- if ($isInstanceOf(n, "Int"))
123- then {
124- let o = n
125- o
126- }
127- else 0
128- }
129- let A = (h.amount + t)
130- if (if (if (if (if (if ((A > 0))
131- then ((height - y) > (1440 * f))
132- else false)
133- then ((height - x) > e)
134- else false)
135- then (A > s)
136- else false)
137- then (z > 0)
138- else false)
139- then if (((r + v) > height))
140- then true
141- else (height > ((r + v) + 1440))
142- else false)
143- then WriteSet([DataEntry(d, A), DataEntry("HighestPushAddress", toBase58String(a.caller.bytes)), DataEntry("HighestPush", A), DataEntry(j, height), DataEntry("PrizeHeight", height), DataEntry("Delay", v)])
144- else throw("Your Push dot not comply one of the following conditions:
145-1. Positive Value
146-2. Must Staked ASIMI Token for a minimum of week
147-3. Should be Higher than last Highest Push 4. Should wait required time between Pushes
148-")
149- }
150- else throw("Can deposit only positive amounts of ASIMI Token")
210+ else throw((("Can deposit only positive amounts of Troikan Token, or Check your Wallet balance in Troika, you should have more than " + toString(r)) + " to push"))
211+ else throw("You do not have enough Troikan Tokens in your Wallet Balance, Please Harvest if you have earned Troikan wallet or transfer to your wallet necessary Troikan amount !")
151212 }
152213
153214
154215
155216 @Callable(a)
156217 func Stake () = {
157- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
218+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
158219 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
159- let h = extract(a.payment)
160- if (if ((h.amount > 0))
161- then (h.assetId == b)
220+ let m = extract(a.payment)
221+ if (if ((m.amount > 0))
222+ then (m.assetId == g)
162223 else false)
163224 then {
164- let B = assetBalance(this, c)
165- let C = (toBase58String(a.caller.bytes) + "_APY")
166- let D = (toBase58String(a.caller.bytes) + "_Staking")
167- let E = (toBase58String(a.caller.bytes) + "_Earnings")
168- let j = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
169- let F = (toBase58String(a.caller.bytes) + "_StakedTransactions")
170- let G = (toBase58String(a.caller.bytes) + "_PrizeHeight")
171- let H = {
172- let n = getInteger(this, F)
173- if ($isInstanceOf(n, "Int"))
225+ let K = assetBalance(this, c)
226+ let L = (toBase58String(a.caller.bytes) + "_APY")
227+ let n = (toBase58String(a.caller.bytes) + "_Push")
228+ let M = (toBase58String(a.caller.bytes) + "_Staking")
229+ let N = (toBase58String(a.caller.bytes) + "_Earnings")
230+ let t = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
231+ let O = (toBase58String(a.caller.bytes) + "_StakedTransactions")
232+ let P = (toBase58String(a.caller.bytes) + "_PrizeHeight")
233+ let Q = {
234+ let e = getInteger(this, O)
235+ if ($isInstanceOf(e, "Int"))
174236 then {
175- let o = n
176- o
237+ let f = e
238+ f
177239 }
178240 else 0
179241 }
180- let I = (H + 1)
181- let J = {
182- let n = getInteger(this, D)
183- if ($isInstanceOf(n, "Int"))
242+ let R = {
243+ let e = getInteger(this, n)
244+ if ($isInstanceOf(e, "Int"))
184245 then {
185- let o = n
186- o
246+ let f = e
247+ f
187248 }
188249 else 0
189250 }
190- let K = (J + h.amount)
191- let l = assetBalance(this, b)
192- let m = {
193- let n = getInteger(this, "StakeBalance")
194- if ($isInstanceOf(n, "Int"))
251+ let E = {
252+ let e = getInteger(this, t)
253+ if ($isInstanceOf(e, "Int"))
195254 then {
196- let o = n
197- o
255+ let f = e
256+ f
198257 }
199258 else 0
200259 }
201- let L = (m + h.amount)
202- let p = (l - m)
203- let M = {
204- let n = getInteger(this, E)
205- if ($isInstanceOf(n, "Int"))
260+ let S = if ((E == 0))
261+ then height
262+ else E
263+ let T = (Q + 1)
264+ let U = {
265+ let e = getInteger(this, M)
266+ if ($isInstanceOf(e, "Int"))
206267 then {
207- let o = n
208- o
268+ let f = e
269+ f
209270 }
210271 else 0
211272 }
212- let q = {
213- let n = getInteger(this, "PrizeHeight")
214- if ($isInstanceOf(n, "Int"))
273+ let V = (U + m.amount)
274+ let v = assetBalance(this, g)
275+ let w = {
276+ let e = getInteger(this, "StakeBalance")
277+ if ($isInstanceOf(e, "Int"))
215278 then {
216- let o = n
217- o
279+ let f = e
280+ f
218281 }
219282 else 0
220283 }
221- let r = if (if ((q == 0))
222- then (p == 0)
284+ let W = (w + m.amount)
285+ let x = {
286+ let e = getInteger(this, "FundBox")
287+ if ($isInstanceOf(e, "Int"))
288+ then {
289+ let f = e
290+ f
291+ }
292+ else 0
293+ }
294+ let X = {
295+ let e = getInteger(this, N)
296+ if ($isInstanceOf(e, "Int"))
297+ then {
298+ let f = e
299+ f
300+ }
301+ else 0
302+ }
303+ let y = {
304+ let e = getInteger(this, "PrizeHeight")
305+ if ($isInstanceOf(e, "Int"))
306+ then {
307+ let f = e
308+ f
309+ }
310+ else 0
311+ }
312+ let z = if (if ((y == 0))
313+ then (x == 0)
223314 else false)
224315 then 0
225- else if (if ((q == 0))
226- then (p != 0)
316+ else if (if ((y == 0))
317+ then (x != 0)
227318 else false)
228319 then height
229- else if (if ((q != 0))
230- then (p != 0)
320+ else if (if ((y != 0))
321+ then (x != 0)
231322 else false)
232- then q
323+ then y
233324 else 0
234- if ((100000000 > B))
325+ if ((100000000 > K))
235326 then throw("No enough GovernToken In Contract, Please deposit GovernTokens")
236327 else {
237- let N = if ((m == 0))
328+ let Y = if ((w == 0))
238329 then 10000
239- else if ((I > 10))
240- then ((10000 * I) * (1 + (K / m)))
241- else (10000 * (1 + (K / m)))
242- let O = if ((M > 0))
243- then ((100 * N) / M)
330+ else if ((T > 10))
331+ then ((10000 * T) * (1 + (V / w)))
332+ else (10000 * (1 + (V / w)))
333+ let Z = if ((X > 0))
334+ then ((100 * Y) / X)
244335 else 0
245- let P = (M + N)
246- ScriptResult(WriteSet([DataEntry(E, P), DataEntry(D, K), DataEntry(F, I), DataEntry("StakeBalance", L), DataEntry("FundBox", p), DataEntry("PrizeHeight", r), DataEntry(C, O), DataEntry(j, height)]), TransferSet([ScriptTransfer(a.caller, N, c)]))
336+ let aa = (X + Y)
337+ ScriptResult(WriteSet([DataEntry(N, aa), DataEntry(M, V), DataEntry(O, T), DataEntry("StakeBalance", W), DataEntry("PrizeHeight", z), DataEntry(L, Z), DataEntry(t, S), DataEntry(n, R)]), TransferSet([ScriptTransfer(a.caller, Y, c)]))
247338 }
248339 }
249340 else throw("Can deposit only StakeToken")
252343
253344
254345 @Callable(a)
255-func WithdrawStakedFunds (Q) = {
256- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
346+func WithdrawStakedFunds (ab) = {
347+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
257348 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
258- let D = (toBase58String(a.caller.bytes) + "_Staking")
259- let E = ((toBase58String(a.caller.bytes) + "_") + toBase58String(c))
260- let l = assetBalance(this, b)
261- let m = {
262- let n = getInteger(this, "StakeBalance")
263- if ($isInstanceOf(n, "Int"))
349+ let t = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
350+ let M = (toBase58String(a.caller.bytes) + "_Staking")
351+ let N = ((toBase58String(a.caller.bytes) + "_") + toBase58String(c))
352+ let v = assetBalance(this, g)
353+ let E = {
354+ let e = getInteger(this, t)
355+ if ($isInstanceOf(e, "Int"))
264356 then {
265- let o = n
266- o
357+ let f = e
358+ f
267359 }
268360 else 0
269361 }
270- let p = (l - m)
271- let q = {
272- let n = getInteger(this, "PrizeHeight")
273- if ($isInstanceOf(n, "Int"))
362+ let w = {
363+ let e = getInteger(this, "StakeBalance")
364+ if ($isInstanceOf(e, "Int"))
274365 then {
275- let o = n
276- o
366+ let f = e
367+ f
277368 }
278369 else 0
279370 }
280- let r = if (if ((q == 0))
281- then (p == 0)
282- else false)
283- then 0
284- else if (if ((q == 0))
285- then (p != 0)
286- else false)
287- then height
288- else if (if ((q != 0))
289- then (p != 0)
290- else false)
291- then q
292- else 0
293- let R = toBase58String(a.caller.bytes)
294- let S = {
295- let n = getInteger(this, D)
296- if ($isInstanceOf(n, "Int"))
371+ let x = {
372+ let e = getInteger(this, "FundBox")
373+ if ($isInstanceOf(e, "Int"))
297374 then {
298- let o = n
299- o
375+ let f = e
376+ f
300377 }
301378 else 0
302379 }
303- let T = (S - Q)
304- let L = (m - Q)
305- if ((0 > Q))
380+ let y = {
381+ let e = getInteger(this, "PrizeHeight")
382+ if ($isInstanceOf(e, "Int"))
383+ then {
384+ let f = e
385+ f
386+ }
387+ else 0
388+ }
389+ let z = if (if ((y == 0))
390+ then (x == 0)
391+ else false)
392+ then 0
393+ else if (if ((y == 0))
394+ then (x != 0)
395+ else false)
396+ then height
397+ else if (if ((y != 0))
398+ then (x != 0)
399+ else false)
400+ then y
401+ else 0
402+ let b = toBase58String(a.caller.bytes)
403+ let ac = {
404+ let e = getInteger(this, M)
405+ if ($isInstanceOf(e, "Int"))
406+ then {
407+ let f = e
408+ f
409+ }
410+ else 0
411+ }
412+ let ad = (ac - ab)
413+ let W = (w - ab)
414+ let S = if ((W == 0))
415+ then 0
416+ else E
417+ if ((0 > ab))
306418 then throw("Can't withdraw negative amount")
307- else if ((0 > T))
308- then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((S / 100000000))))
419+ else if ((0 > ad))
420+ then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((ac / 100000000))))
309421 else if ((100000000 > assetBalance(this, c)))
310422 then throw(("Not enough Troika In Contract: " + toString((assetBalance(this, c) / 100000000))))
311- else ScriptResult(WriteSet([DataEntry(E, 100000000), DataEntry(D, T), DataEntry("StakeBalance", L), DataEntry("FundBox", p), DataEntry("PrizeHeight", r)]), TransferSet([ScriptTransfer(a.caller, 100000000, c), ScriptTransfer(a.caller, Q, b)]))
423+ else ScriptResult(WriteSet([DataEntry(N, 100000000), DataEntry(M, ad), DataEntry("StakeBalance", W), DataEntry("PrizeHeight", z), DataEntry(t, S)]), TransferSet([ScriptTransfer(a.caller, 100000000, c), ScriptTransfer(a.caller, ab, g)]))
312424 }
313425
314426
315427
316428 @Callable(a)
317-func HarvestGovernToiken (Q) = {
318- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
429+func HarvestGovernToiken (ab) = {
430+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
319431 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
320- let l = assetBalance(this, b)
321- let E = (toBase58String(a.caller.bytes) + "_Earnings")
322- let m = {
323- let n = getInteger(this, "StakeBalance")
324- if ($isInstanceOf(n, "Int"))
432+ let v = assetBalance(this, g)
433+ let N = (toBase58String(a.caller.bytes) + "_Earnings")
434+ let w = {
435+ let e = getInteger(this, "StakeBalance")
436+ if ($isInstanceOf(e, "Int"))
325437 then {
326- let o = n
327- o
438+ let f = e
439+ f
328440 }
329441 else 0
330442 }
331- let p = (l - m)
332- let q = {
333- let n = getInteger(this, "PrizeHeight")
334- if ($isInstanceOf(n, "Int"))
443+ let x = {
444+ let e = getInteger(this, "FundBox")
445+ if ($isInstanceOf(e, "Int"))
335446 then {
336- let o = n
337- o
447+ let f = e
448+ f
338449 }
339450 else 0
340451 }
341- let r = if (if ((q == 0))
342- then (p == 0)
343- else false)
344- then 0
345- else if (if ((q == 0))
346- then (p != 0)
347- else false)
348- then height
349- else if (if ((q != 0))
350- then (p != 0)
351- else false)
352- then q
353- else 0
354- let R = toBase58String(a.caller.bytes)
355- let S = {
356- let n = getInteger(this, E)
357- if ($isInstanceOf(n, "Int"))
452+ let y = {
453+ let e = getInteger(this, "PrizeHeight")
454+ if ($isInstanceOf(e, "Int"))
358455 then {
359- let o = n
360- o
456+ let f = e
457+ f
361458 }
362459 else 0
363460 }
364- let T = (S - Q)
365- if ((0 > Q))
461+ let z = if (if ((y == 0))
462+ then (x == 0)
463+ else false)
464+ then 0
465+ else if (if ((y == 0))
466+ then (x != 0)
467+ else false)
468+ then height
469+ else if (if ((y != 0))
470+ then (x != 0)
471+ else false)
472+ then y
473+ else 0
474+ let b = toBase58String(a.caller.bytes)
475+ let ac = {
476+ let e = getInteger(this, N)
477+ if ($isInstanceOf(e, "Int"))
478+ then {
479+ let f = e
480+ f
481+ }
482+ else 0
483+ }
484+ let ad = (ac - ab)
485+ if ((0 > ab))
366486 then throw("Can't withdraw negative amount")
367- else if ((0 > T))
368- then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((S / 100000000))))
369- else ScriptResult(WriteSet([DataEntry(E, T), DataEntry("FundBox", p), DataEntry("PrizeHeight", r)]), TransferSet([ScriptTransfer(a.caller, Q, c)]))
487+ else if ((0 > ad))
488+ then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((ac / 100000000))))
489+ else ScriptResult(WriteSet([DataEntry(N, ad), DataEntry("PrizeHeight", z)]), TransferSet([ScriptTransfer(a.caller, ab, c)]))
370490 }
371491
372492
373493
374494 @Callable(a)
375495 func delayprize () = {
376- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
496+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
377497 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
378- let U = 1
379- let E = ((toBase58String(a.caller.bytes) + "_") + toBase58String(c))
380- let V = assetBalance(Address(a.caller.bytes), c)
381- let l = assetBalance(this, b)
382- let m = {
383- let n = getInteger(this, "StakeBalance")
384- if ($isInstanceOf(n, "Int"))
498+ let ae = 1
499+ let N = ((toBase58String(a.caller.bytes) + "_") + toBase58String(c))
500+ let af = assetBalance(Address(a.caller.bytes), c)
501+ let v = assetBalance(this, g)
502+ let w = {
503+ let e = getInteger(this, "StakeBalance")
504+ if ($isInstanceOf(e, "Int"))
385505 then {
386- let o = n
387- o
506+ let f = e
507+ f
388508 }
389509 else 0
390510 }
391- let p = (l - m)
392- let q = {
393- let n = getInteger(this, "PrizeHeight")
394- if ($isInstanceOf(n, "Int"))
511+ let x = {
512+ let e = getInteger(this, "FundBox")
513+ if ($isInstanceOf(e, "Int"))
395514 then {
396- let o = n
397- o
515+ let f = e
516+ f
398517 }
399518 else 0
400519 }
401- let r = if (if ((q == 0))
402- then (p == 0)
403- else false)
404- then 0
405- else if (if ((q == 0))
406- then (p != 0)
407- else false)
408- then height
409- else if (if ((q != 0))
410- then (p != 0)
411- else false)
412- then q
413- else 0
414- let u = {
415- let n = getInteger(this, "Delay")
416- if ($isInstanceOf(n, "Int"))
520+ let y = {
521+ let e = getInteger(this, "PrizeHeight")
522+ if ($isInstanceOf(e, "Int"))
417523 then {
418- let o = n
419- o
524+ let f = e
525+ f
420526 }
421527 else 0
422528 }
423- let W = {
424- let n = getInteger(this, "DelayCost")
425- if ($isInstanceOf(n, "Int"))
529+ let z = if (if ((y == 0))
530+ then (x == 0)
531+ else false)
532+ then 0
533+ else if (if ((y == 0))
534+ then (x != 0)
535+ else false)
536+ then height
537+ else if (if ((y != 0))
538+ then (x != 0)
539+ else false)
540+ then y
541+ else 0
542+ let A = {
543+ let e = getInteger(this, "Delay")
544+ if ($isInstanceOf(e, "Int"))
426545 then {
427- let o = n
428- o
546+ let f = e
547+ f
548+ }
549+ else 0
550+ }
551+ let ag = {
552+ let e = getInteger(this, "DelayCost")
553+ if ($isInstanceOf(e, "Int"))
554+ then {
555+ let f = e
556+ f
429557 }
430558 else 10
431559 }
432- let h = extract(a.payment)
433- if (if (isDefined(h.assetId))
434- then (extract(h.assetId) == c)
560+ let m = extract(a.payment)
561+ let G = {
562+ let e = getInteger(this, "DevBox")
563+ if ($isInstanceOf(e, "Int"))
564+ then {
565+ let f = e
566+ f
567+ }
568+ else 0
569+ }
570+ if (if (isDefined(m.assetId))
571+ then (extract(m.assetId) == c)
435572 else false)
436- then {
437- let X = h.amount
438- let Y = if ((W == 0))
439- then 1000000000
440- else (2 * W)
441- if ((X >= Y))
442- then {
443- let v = (u + (1440 * U))
444- WriteSet([DataEntry("Delay", v), DataEntry("DelayCost", Y), DataEntry("FundBox", p), DataEntry("PrizeHeight", height)])
445- }
446- else throw((("To delay the release of the reward ONE DAY later than expected, you need " + toString(Y)) + "TROIKAs"))
447- }
573+ then if ((x > 0))
574+ then {
575+ let ah = m.amount
576+ let d = (G + ((m.amount * 5) / 1000))
577+ let ai = if ((ag == 0))
578+ then 1000000000
579+ else (2 * ag)
580+ if ((ah >= ai))
581+ then {
582+ let B = (A + (1440 * ae))
583+ WriteSet([DataEntry("Delay", B), DataEntry("DelayCost", ai), DataEntry("PrizeHeight", z), DataEntry("DevBox", d)])
584+ }
585+ else throw((("To delay the release of the reward ONE DAY later than expected, you need " + toString(ai)) + "TROIKAs"))
586+ }
587+ else throw("You cannot delay the reward before reward is received! Please wait until a reward is available")
448588 else throw("Can Use only Troika Token to Delay Reward")
449589 }
450590
452592
453593 @Callable(a)
454594 func ClaimPrize () = {
455- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
595+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
456596 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
457- let D = (toBase58String(a.caller.bytes) + "_Staking")
458- let d = (toBase58String(a.caller.bytes) + "_Push")
459- let j = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
460- let f = 7
461- let Z = assetBalance(this, c)
462- let l = assetBalance(this, b)
463- let m = {
464- let n = getInteger(this, "StakeBalance")
465- if ($isInstanceOf(n, "Int"))
597+ let M = (toBase58String(a.caller.bytes) + "_Staking")
598+ let n = (toBase58String(a.caller.bytes) + "_Push")
599+ let t = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
600+ let i = 7
601+ let k = 0
602+ let aj = assetBalance(this, c)
603+ let v = assetBalance(this, g)
604+ let w = {
605+ let e = getInteger(this, "StakeBalance")
606+ if ($isInstanceOf(e, "Int"))
466607 then {
467- let o = n
468- o
608+ let f = e
609+ f
469610 }
470611 else 0
471612 }
472- let p = (l - m)
473- let aa = {
474- let n = getInteger(this, d)
475- if ($isInstanceOf(n, "Int"))
613+ let x = {
614+ let e = getInteger(this, "FundBox")
615+ if ($isInstanceOf(e, "Int"))
476616 then {
477- let o = n
478- o
617+ let f = e
618+ f
479619 }
480620 else 0
481621 }
482- let y = {
483- let n = getInteger(this, j)
484- if ($isInstanceOf(n, "Int"))
622+ let R = {
623+ let e = getInteger(this, n)
624+ if ($isInstanceOf(e, "Int"))
485625 then {
486- let o = n
487- o
626+ let f = e
627+ f
488628 }
489629 else 0
490630 }
491- let ab = {
492- let n = getInteger(this, D)
493- if ($isInstanceOf(n, "Int"))
631+ let E = {
632+ let e = getInteger(this, t)
633+ if ($isInstanceOf(e, "Int"))
494634 then {
495- let o = n
496- o
635+ let f = e
636+ f
497637 }
498638 else 0
499639 }
500- let u = {
501- let n = getInteger(this, "Delay")
502- if ($isInstanceOf(n, "Int"))
640+ let ak = {
641+ let e = getInteger(this, M)
642+ if ($isInstanceOf(e, "Int"))
503643 then {
504- let o = n
505- o
644+ let f = e
645+ f
506646 }
507647 else 0
508648 }
509- let ac = getStringValue(this, "HighestPushAddress")
510- let ad = {
511- let n = getInteger(this, "PrizeHeight")
512- if ($isInstanceOf(n, "Int"))
649+ let A = {
650+ let e = getInteger(this, "Delay")
651+ if ($isInstanceOf(e, "Int"))
513652 then {
514- let o = n
515- o
653+ let f = e
654+ f
516655 }
517656 else 0
518657 }
519- let s = {
520- let n = getInteger(this, "HighestPush")
521- if ($isInstanceOf(n, "Int"))
658+ let al = getStringValue(this, "HighestPushAddress")
659+ let am = {
660+ let e = getInteger(this, "PrizeHeight")
661+ if ($isInstanceOf(e, "Int"))
522662 then {
523- let o = n
524- o
663+ let f = e
664+ f
525665 }
526666 else 0
527667 }
528- if (if ((p == 0))
668+ let r = {
669+ let e = getInteger(this, "HighestPush")
670+ if ($isInstanceOf(e, "Int"))
671+ then {
672+ let f = e
673+ f
674+ }
675+ else 0
676+ }
677+ let p = (toBase58String(a.caller.bytes) + "_refs")
678+ let q = {
679+ let e = getInteger(this, p)
680+ if ($isInstanceOf(e, "Int"))
681+ then {
682+ let f = e
683+ f
684+ }
685+ else 0
686+ }
687+ if (if ((x == 0))
529688 then true
530- else (10000000000 > Z))
689+ else (10000000000 > aj))
531690 then throw("No prize to Claim or Not enough Govern Token en Contract (Min 100 Troika)")
532- else if ((toBase58String(a.caller.bytes) != ac))
691+ else if ((toBase58String(a.caller.bytes) != al))
533692 then throw("You are not the winner hence cannot claim the reward ")
534- else if (if ((100000000 > ab))
535- then ((1440 * f) > y)
693+ else if (if ((100000000 > ak))
694+ then ((1440 * i) > E)
536695 else false)
537696 then throw("You have to Stake ASIMI Token to claim reward ")
538- else if (if ((height > (ad + u)))
539- then (aa >= s)
697+ else if (if ((height > (am + A)))
698+ then (R >= r)
540699 else false)
541- then ScriptResult(WriteSet([DataEntry(ac, p), DataEntry("FundBox", 0), DataEntry("HighestPush", 0), DataEntry(d, 0), DataEntry("HighestPushAddress", ""), DataEntry("PrizeHeight", 0), DataEntry("Delay", 0), DataEntry("DelayCost", 0), DataEntry("LastWinner", ac), DataEntry("LastPrize", p)]), TransferSet([ScriptTransfer(a.caller, p, b), ScriptTransfer(a.caller, 1000000000, c)]))
542- else throw("You have to deposit 100 GovernToken to claim Reward and/or wait till countown is finished")
700+ then if ((q >= k))
701+ then ScriptResult(WriteSet([DataEntry(al, x), DataEntry("FundBox", 0), DataEntry("HighestPush", 0), DataEntry(n, 0), DataEntry("HighestPushAddress", ""), DataEntry("PrizeHeight", 0), DataEntry("Delay", 0), DataEntry("DelayCost", 0), DataEntry("LastWinner", al), DataEntry("LastPrize", x)]), TransferSet([ScriptTransfer(a.caller, x, g), ScriptTransfer(a.caller, 1000000000, c)]))
702+ else throw("You have to have 10 referrals already staking for a minimum of 10 days to Claim the prize")
703+ else throw("You have to be the user with the highest Push and wait till countown is finished, to claim Reward")
704+ }
705+
706+
707+
708+@Callable(a)
709+func Addmentor (an) = {
710+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
711+ let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
712+ let ao = (toBase58String(a.caller.bytes) + "_Mentor")
713+ if ((an != ""))
714+ then WriteSet([DataEntry(ao, an)])
715+ else throw("Mentor's Address cannot be empty")
543716 }
544717
545718
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(a)
7-func ResetAccount () = {
8- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
7+func DevWithdraw () = {
8+ let b = toBase58String(a.caller.bytes)
99 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
10- let d = (toBase58String(a.caller.bytes) + "_Push")
11- WriteSet([DataEntry("DelayCost", 0), DataEntry("Delay", 0)])
10+ if ((b == "3P74buHt98BnojFcaREJZtb98KDyUmZGemJ"))
11+ then {
12+ let d = {
13+ let e = getInteger(this, "DevBox")
14+ if ($isInstanceOf(e, "Int"))
15+ then {
16+ let f = e
17+ f
18+ }
19+ else 0
20+ }
21+ if ((0 > d))
22+ then throw("Not enough balance")
23+ else ScriptResult(WriteSet([DataEntry("DevBox", 0)]), TransferSet([ScriptTransfer(a.caller, d, c)]))
24+ }
25+ else throw("You cannot withdraw as your are not the Dev.")
1226 }
1327
1428
1529
1630 @Callable(a)
1731 func PushReward () = {
18- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
32+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
1933 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
20- let e = 10
21- let f = 0
22- let g = 20
23- let h = extract(a.payment)
24- if (if ((h.amount > 0))
25- then (h.assetId == c)
26- else false)
27- then {
28- let d = (toBase58String(a.caller.bytes) + "_Push")
29- let i = (toBase58String(a.caller.bytes) + "_UserLastPushBlock")
30- let j = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
31- let k = (toBase58String(a.caller.bytes) + "_Staking")
32- let l = assetBalance(this, b)
33- let m = {
34- let n = getInteger(this, "StakeBalance")
35- if ($isInstanceOf(n, "Int"))
36- then {
37- let o = n
38- o
39- }
40- else 0
34+ let h = 10
35+ let i = 7
36+ let j = 1440
37+ let k = 0
38+ let l = assetBalance(Address(a.caller.bytes), c)
39+ let m = extract(a.payment)
40+ let n = (toBase58String(a.caller.bytes) + "_Push")
41+ let o = {
42+ let e = getInteger(this, n)
43+ if ($isInstanceOf(e, "Int"))
44+ then {
45+ let f = e
46+ f
4147 }
42- let p = (l - m)
43- let q = {
44- let n = getInteger(this, "PrizeHeight")
45- if ($isInstanceOf(n, "Int"))
46- then {
47- let o = n
48- o
49- }
50- else 0
48+ else 0
49+ }
50+ let p = (toBase58String(a.caller.bytes) + "_refs")
51+ let q = {
52+ let e = getInteger(this, p)
53+ if ($isInstanceOf(e, "Int"))
54+ then {
55+ let f = e
56+ f
5157 }
52- let r = if (if ((q == 0))
53- then (p == 0)
54- else false)
55- then 0
56- else if (if ((q == 0))
57- then (p != 0)
58+ else 0
59+ }
60+ let r = {
61+ let e = getInteger(this, "HighestPush")
62+ if ($isInstanceOf(e, "Int"))
63+ then {
64+ let f = e
65+ f
66+ }
67+ else 0
68+ }
69+ if ((l > m.amount))
70+ then if (if (((m.amount + o) > r))
71+ then (m.assetId == c)
72+ else false)
73+ then {
74+ let s = (toBase58String(a.caller.bytes) + "_UserLastPushBlock")
75+ let t = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
76+ let u = (toBase58String(a.caller.bytes) + "_Staking")
77+ let v = assetBalance(this, g)
78+ let w = {
79+ let e = getInteger(this, "StakeBalance")
80+ if ($isInstanceOf(e, "Int"))
81+ then {
82+ let f = e
83+ f
84+ }
85+ else 0
86+ }
87+ let x = {
88+ let e = getInteger(this, "FundBox")
89+ if ($isInstanceOf(e, "Int"))
90+ then {
91+ let f = e
92+ f
93+ }
94+ else 0
95+ }
96+ let y = {
97+ let e = getInteger(this, "PrizeHeight")
98+ if ($isInstanceOf(e, "Int"))
99+ then {
100+ let f = e
101+ f
102+ }
103+ else 0
104+ }
105+ let z = if (if ((y == 0))
106+ then (x == 0)
107+ else false)
108+ then 0
109+ else if (if ((y == 0))
110+ then (x != 0)
111+ else false)
112+ then height
113+ else if (if ((y != 0))
114+ then (x != 0)
115+ else false)
116+ then y
117+ else 0
118+ let A = {
119+ let e = getInteger(this, "Delay")
120+ if ($isInstanceOf(e, "Int"))
121+ then {
122+ let f = e
123+ f
124+ }
125+ else 0
126+ }
127+ let B = (A + j)
128+ let C = {
129+ let e = getInteger(this, "HighestPushAddress")
130+ if ($isInstanceOf(e, "Int"))
131+ then {
132+ let f = e
133+ f
134+ }
135+ else 0
136+ }
137+ let D = {
138+ let e = getInteger(this, s)
139+ if ($isInstanceOf(e, "Int"))
140+ then {
141+ let f = e
142+ f
143+ }
144+ else 0
145+ }
146+ let E = {
147+ let e = getInteger(this, t)
148+ if ($isInstanceOf(e, "Int"))
149+ then {
150+ let f = e
151+ f
152+ }
153+ else 0
154+ }
155+ let F = {
156+ let e = getInteger(this, u)
157+ if ($isInstanceOf(e, "Int"))
158+ then {
159+ let f = e
160+ f
161+ }
162+ else 0
163+ }
164+ let G = {
165+ let e = getInteger(this, "DevBox")
166+ if ($isInstanceOf(e, "Int"))
167+ then {
168+ let f = e
169+ f
170+ }
171+ else 0
172+ }
173+ let d = (G + ((m.amount * 5) / 1000))
174+ let H = (m.amount + o)
175+ let I = if (if ((height > ((z + B) + 1440)))
176+ then (r > 0)
58177 else false)
59178 then height
60- else if (if ((q != 0))
61- then (p != 0)
62- else false)
63- then q
64- else 0
65- let s = {
66- let n = getInteger(this, "HighestPush")
67- if ($isInstanceOf(n, "Int"))
68- then {
69- let o = n
70- o
71- }
72- else 0
179+ else z
180+ if (if ((H > 0))
181+ then ((height - E) > (1440 * i))
182+ else false)
183+ then if (((height - D) > h))
184+ then if ((F > 0))
185+ then if ((H > r))
186+ then if ((x > 0))
187+ then if (if (if (if (((I + B) > height))
188+ then true
189+ else (height > ((I + B) + 1440)))
190+ then (r > 0)
191+ else false)
192+ then true
193+ else (r == 0))
194+ then if ((q >= k))
195+ then WriteSet([DataEntry(n, H), DataEntry("HighestPushAddress", toBase58String(a.caller.bytes)), DataEntry("HighestPush", H), DataEntry(s, height), DataEntry("PrizeHeight", I), DataEntry("Delay", B), DataEntry("DevBox", d)])
196+ else throw("You have to have 10 referrals already staking for a minimum of 10 days, to push")
197+ else {
198+ let J = if ((r > 0))
199+ then "You cannot Push after rewarding Prize and before One day has passed after award"
200+ else "Unexpected error"
201+ throw(J)
202+ }
203+ else throw("You cannot push before the reward is unlocked, no reward has been detected yet")
204+ else throw("Your push in troikan token, should be Higher than last Highest Push")
205+ else throw("To be able to participate in Pushing for the reward you need to Stake ASIMIs in the dApp")
206+ else throw("You have to wait 10min before you can make a new Push")
207+ else throw(("Your Push dot not comply one of the following conditions: " + "1. Positive Value for Push in Troikan Toke
208+ 2. Must Staked ASIMI Token for a minimum of week "))
73209 }
74- let t = {
75- let n = getInteger(this, d)
76- if ($isInstanceOf(n, "Int"))
77- then {
78- let o = n
79- o
80- }
81- else 0
82- }
83- let u = {
84- let n = getInteger(this, "Delay")
85- if ($isInstanceOf(n, "Int"))
86- then {
87- let o = n
88- o
89- }
90- else 0
91- }
92- let v = (u + g)
93- let w = {
94- let n = getInteger(this, "HighestPushAddress")
95- if ($isInstanceOf(n, "Int"))
96- then {
97- let o = n
98- o
99- }
100- else 0
101- }
102- let x = {
103- let n = getInteger(this, i)
104- if ($isInstanceOf(n, "Int"))
105- then {
106- let o = n
107- o
108- }
109- else 0
110- }
111- let y = {
112- let n = getInteger(this, j)
113- if ($isInstanceOf(n, "Int"))
114- then {
115- let o = n
116- o
117- }
118- else 0
119- }
120- let z = {
121- let n = getInteger(this, k)
122- if ($isInstanceOf(n, "Int"))
123- then {
124- let o = n
125- o
126- }
127- else 0
128- }
129- let A = (h.amount + t)
130- if (if (if (if (if (if ((A > 0))
131- then ((height - y) > (1440 * f))
132- else false)
133- then ((height - x) > e)
134- else false)
135- then (A > s)
136- else false)
137- then (z > 0)
138- else false)
139- then if (((r + v) > height))
140- then true
141- else (height > ((r + v) + 1440))
142- else false)
143- then WriteSet([DataEntry(d, A), DataEntry("HighestPushAddress", toBase58String(a.caller.bytes)), DataEntry("HighestPush", A), DataEntry(j, height), DataEntry("PrizeHeight", height), DataEntry("Delay", v)])
144- else throw("Your Push dot not comply one of the following conditions:
145-1. Positive Value
146-2. Must Staked ASIMI Token for a minimum of week
147-3. Should be Higher than last Highest Push 4. Should wait required time between Pushes
148-")
149- }
150- else throw("Can deposit only positive amounts of ASIMI Token")
210+ else throw((("Can deposit only positive amounts of Troikan Token, or Check your Wallet balance in Troika, you should have more than " + toString(r)) + " to push"))
211+ else throw("You do not have enough Troikan Tokens in your Wallet Balance, Please Harvest if you have earned Troikan wallet or transfer to your wallet necessary Troikan amount !")
151212 }
152213
153214
154215
155216 @Callable(a)
156217 func Stake () = {
157- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
218+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
158219 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
159- let h = extract(a.payment)
160- if (if ((h.amount > 0))
161- then (h.assetId == b)
220+ let m = extract(a.payment)
221+ if (if ((m.amount > 0))
222+ then (m.assetId == g)
162223 else false)
163224 then {
164- let B = assetBalance(this, c)
165- let C = (toBase58String(a.caller.bytes) + "_APY")
166- let D = (toBase58String(a.caller.bytes) + "_Staking")
167- let E = (toBase58String(a.caller.bytes) + "_Earnings")
168- let j = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
169- let F = (toBase58String(a.caller.bytes) + "_StakedTransactions")
170- let G = (toBase58String(a.caller.bytes) + "_PrizeHeight")
171- let H = {
172- let n = getInteger(this, F)
173- if ($isInstanceOf(n, "Int"))
225+ let K = assetBalance(this, c)
226+ let L = (toBase58String(a.caller.bytes) + "_APY")
227+ let n = (toBase58String(a.caller.bytes) + "_Push")
228+ let M = (toBase58String(a.caller.bytes) + "_Staking")
229+ let N = (toBase58String(a.caller.bytes) + "_Earnings")
230+ let t = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
231+ let O = (toBase58String(a.caller.bytes) + "_StakedTransactions")
232+ let P = (toBase58String(a.caller.bytes) + "_PrizeHeight")
233+ let Q = {
234+ let e = getInteger(this, O)
235+ if ($isInstanceOf(e, "Int"))
174236 then {
175- let o = n
176- o
237+ let f = e
238+ f
177239 }
178240 else 0
179241 }
180- let I = (H + 1)
181- let J = {
182- let n = getInteger(this, D)
183- if ($isInstanceOf(n, "Int"))
242+ let R = {
243+ let e = getInteger(this, n)
244+ if ($isInstanceOf(e, "Int"))
184245 then {
185- let o = n
186- o
246+ let f = e
247+ f
187248 }
188249 else 0
189250 }
190- let K = (J + h.amount)
191- let l = assetBalance(this, b)
192- let m = {
193- let n = getInteger(this, "StakeBalance")
194- if ($isInstanceOf(n, "Int"))
251+ let E = {
252+ let e = getInteger(this, t)
253+ if ($isInstanceOf(e, "Int"))
195254 then {
196- let o = n
197- o
255+ let f = e
256+ f
198257 }
199258 else 0
200259 }
201- let L = (m + h.amount)
202- let p = (l - m)
203- let M = {
204- let n = getInteger(this, E)
205- if ($isInstanceOf(n, "Int"))
260+ let S = if ((E == 0))
261+ then height
262+ else E
263+ let T = (Q + 1)
264+ let U = {
265+ let e = getInteger(this, M)
266+ if ($isInstanceOf(e, "Int"))
206267 then {
207- let o = n
208- o
268+ let f = e
269+ f
209270 }
210271 else 0
211272 }
212- let q = {
213- let n = getInteger(this, "PrizeHeight")
214- if ($isInstanceOf(n, "Int"))
273+ let V = (U + m.amount)
274+ let v = assetBalance(this, g)
275+ let w = {
276+ let e = getInteger(this, "StakeBalance")
277+ if ($isInstanceOf(e, "Int"))
215278 then {
216- let o = n
217- o
279+ let f = e
280+ f
218281 }
219282 else 0
220283 }
221- let r = if (if ((q == 0))
222- then (p == 0)
284+ let W = (w + m.amount)
285+ let x = {
286+ let e = getInteger(this, "FundBox")
287+ if ($isInstanceOf(e, "Int"))
288+ then {
289+ let f = e
290+ f
291+ }
292+ else 0
293+ }
294+ let X = {
295+ let e = getInteger(this, N)
296+ if ($isInstanceOf(e, "Int"))
297+ then {
298+ let f = e
299+ f
300+ }
301+ else 0
302+ }
303+ let y = {
304+ let e = getInteger(this, "PrizeHeight")
305+ if ($isInstanceOf(e, "Int"))
306+ then {
307+ let f = e
308+ f
309+ }
310+ else 0
311+ }
312+ let z = if (if ((y == 0))
313+ then (x == 0)
223314 else false)
224315 then 0
225- else if (if ((q == 0))
226- then (p != 0)
316+ else if (if ((y == 0))
317+ then (x != 0)
227318 else false)
228319 then height
229- else if (if ((q != 0))
230- then (p != 0)
320+ else if (if ((y != 0))
321+ then (x != 0)
231322 else false)
232- then q
323+ then y
233324 else 0
234- if ((100000000 > B))
325+ if ((100000000 > K))
235326 then throw("No enough GovernToken In Contract, Please deposit GovernTokens")
236327 else {
237- let N = if ((m == 0))
328+ let Y = if ((w == 0))
238329 then 10000
239- else if ((I > 10))
240- then ((10000 * I) * (1 + (K / m)))
241- else (10000 * (1 + (K / m)))
242- let O = if ((M > 0))
243- then ((100 * N) / M)
330+ else if ((T > 10))
331+ then ((10000 * T) * (1 + (V / w)))
332+ else (10000 * (1 + (V / w)))
333+ let Z = if ((X > 0))
334+ then ((100 * Y) / X)
244335 else 0
245- let P = (M + N)
246- ScriptResult(WriteSet([DataEntry(E, P), DataEntry(D, K), DataEntry(F, I), DataEntry("StakeBalance", L), DataEntry("FundBox", p), DataEntry("PrizeHeight", r), DataEntry(C, O), DataEntry(j, height)]), TransferSet([ScriptTransfer(a.caller, N, c)]))
336+ let aa = (X + Y)
337+ ScriptResult(WriteSet([DataEntry(N, aa), DataEntry(M, V), DataEntry(O, T), DataEntry("StakeBalance", W), DataEntry("PrizeHeight", z), DataEntry(L, Z), DataEntry(t, S), DataEntry(n, R)]), TransferSet([ScriptTransfer(a.caller, Y, c)]))
247338 }
248339 }
249340 else throw("Can deposit only StakeToken")
250341 }
251342
252343
253344
254345 @Callable(a)
255-func WithdrawStakedFunds (Q) = {
256- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
346+func WithdrawStakedFunds (ab) = {
347+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
257348 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
258- let D = (toBase58String(a.caller.bytes) + "_Staking")
259- let E = ((toBase58String(a.caller.bytes) + "_") + toBase58String(c))
260- let l = assetBalance(this, b)
261- let m = {
262- let n = getInteger(this, "StakeBalance")
263- if ($isInstanceOf(n, "Int"))
349+ let t = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
350+ let M = (toBase58String(a.caller.bytes) + "_Staking")
351+ let N = ((toBase58String(a.caller.bytes) + "_") + toBase58String(c))
352+ let v = assetBalance(this, g)
353+ let E = {
354+ let e = getInteger(this, t)
355+ if ($isInstanceOf(e, "Int"))
264356 then {
265- let o = n
266- o
357+ let f = e
358+ f
267359 }
268360 else 0
269361 }
270- let p = (l - m)
271- let q = {
272- let n = getInteger(this, "PrizeHeight")
273- if ($isInstanceOf(n, "Int"))
362+ let w = {
363+ let e = getInteger(this, "StakeBalance")
364+ if ($isInstanceOf(e, "Int"))
274365 then {
275- let o = n
276- o
366+ let f = e
367+ f
277368 }
278369 else 0
279370 }
280- let r = if (if ((q == 0))
281- then (p == 0)
282- else false)
283- then 0
284- else if (if ((q == 0))
285- then (p != 0)
286- else false)
287- then height
288- else if (if ((q != 0))
289- then (p != 0)
290- else false)
291- then q
292- else 0
293- let R = toBase58String(a.caller.bytes)
294- let S = {
295- let n = getInteger(this, D)
296- if ($isInstanceOf(n, "Int"))
371+ let x = {
372+ let e = getInteger(this, "FundBox")
373+ if ($isInstanceOf(e, "Int"))
297374 then {
298- let o = n
299- o
375+ let f = e
376+ f
300377 }
301378 else 0
302379 }
303- let T = (S - Q)
304- let L = (m - Q)
305- if ((0 > Q))
380+ let y = {
381+ let e = getInteger(this, "PrizeHeight")
382+ if ($isInstanceOf(e, "Int"))
383+ then {
384+ let f = e
385+ f
386+ }
387+ else 0
388+ }
389+ let z = if (if ((y == 0))
390+ then (x == 0)
391+ else false)
392+ then 0
393+ else if (if ((y == 0))
394+ then (x != 0)
395+ else false)
396+ then height
397+ else if (if ((y != 0))
398+ then (x != 0)
399+ else false)
400+ then y
401+ else 0
402+ let b = toBase58String(a.caller.bytes)
403+ let ac = {
404+ let e = getInteger(this, M)
405+ if ($isInstanceOf(e, "Int"))
406+ then {
407+ let f = e
408+ f
409+ }
410+ else 0
411+ }
412+ let ad = (ac - ab)
413+ let W = (w - ab)
414+ let S = if ((W == 0))
415+ then 0
416+ else E
417+ if ((0 > ab))
306418 then throw("Can't withdraw negative amount")
307- else if ((0 > T))
308- then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((S / 100000000))))
419+ else if ((0 > ad))
420+ then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((ac / 100000000))))
309421 else if ((100000000 > assetBalance(this, c)))
310422 then throw(("Not enough Troika In Contract: " + toString((assetBalance(this, c) / 100000000))))
311- else ScriptResult(WriteSet([DataEntry(E, 100000000), DataEntry(D, T), DataEntry("StakeBalance", L), DataEntry("FundBox", p), DataEntry("PrizeHeight", r)]), TransferSet([ScriptTransfer(a.caller, 100000000, c), ScriptTransfer(a.caller, Q, b)]))
423+ else ScriptResult(WriteSet([DataEntry(N, 100000000), DataEntry(M, ad), DataEntry("StakeBalance", W), DataEntry("PrizeHeight", z), DataEntry(t, S)]), TransferSet([ScriptTransfer(a.caller, 100000000, c), ScriptTransfer(a.caller, ab, g)]))
312424 }
313425
314426
315427
316428 @Callable(a)
317-func HarvestGovernToiken (Q) = {
318- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
429+func HarvestGovernToiken (ab) = {
430+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
319431 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
320- let l = assetBalance(this, b)
321- let E = (toBase58String(a.caller.bytes) + "_Earnings")
322- let m = {
323- let n = getInteger(this, "StakeBalance")
324- if ($isInstanceOf(n, "Int"))
432+ let v = assetBalance(this, g)
433+ let N = (toBase58String(a.caller.bytes) + "_Earnings")
434+ let w = {
435+ let e = getInteger(this, "StakeBalance")
436+ if ($isInstanceOf(e, "Int"))
325437 then {
326- let o = n
327- o
438+ let f = e
439+ f
328440 }
329441 else 0
330442 }
331- let p = (l - m)
332- let q = {
333- let n = getInteger(this, "PrizeHeight")
334- if ($isInstanceOf(n, "Int"))
443+ let x = {
444+ let e = getInteger(this, "FundBox")
445+ if ($isInstanceOf(e, "Int"))
335446 then {
336- let o = n
337- o
447+ let f = e
448+ f
338449 }
339450 else 0
340451 }
341- let r = if (if ((q == 0))
342- then (p == 0)
343- else false)
344- then 0
345- else if (if ((q == 0))
346- then (p != 0)
347- else false)
348- then height
349- else if (if ((q != 0))
350- then (p != 0)
351- else false)
352- then q
353- else 0
354- let R = toBase58String(a.caller.bytes)
355- let S = {
356- let n = getInteger(this, E)
357- if ($isInstanceOf(n, "Int"))
452+ let y = {
453+ let e = getInteger(this, "PrizeHeight")
454+ if ($isInstanceOf(e, "Int"))
358455 then {
359- let o = n
360- o
456+ let f = e
457+ f
361458 }
362459 else 0
363460 }
364- let T = (S - Q)
365- if ((0 > Q))
461+ let z = if (if ((y == 0))
462+ then (x == 0)
463+ else false)
464+ then 0
465+ else if (if ((y == 0))
466+ then (x != 0)
467+ else false)
468+ then height
469+ else if (if ((y != 0))
470+ then (x != 0)
471+ else false)
472+ then y
473+ else 0
474+ let b = toBase58String(a.caller.bytes)
475+ let ac = {
476+ let e = getInteger(this, N)
477+ if ($isInstanceOf(e, "Int"))
478+ then {
479+ let f = e
480+ f
481+ }
482+ else 0
483+ }
484+ let ad = (ac - ab)
485+ if ((0 > ab))
366486 then throw("Can't withdraw negative amount")
367- else if ((0 > T))
368- then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((S / 100000000))))
369- else ScriptResult(WriteSet([DataEntry(E, T), DataEntry("FundBox", p), DataEntry("PrizeHeight", r)]), TransferSet([ScriptTransfer(a.caller, Q, c)]))
487+ else if ((0 > ad))
488+ then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((ac / 100000000))))
489+ else ScriptResult(WriteSet([DataEntry(N, ad), DataEntry("PrizeHeight", z)]), TransferSet([ScriptTransfer(a.caller, ab, c)]))
370490 }
371491
372492
373493
374494 @Callable(a)
375495 func delayprize () = {
376- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
496+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
377497 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
378- let U = 1
379- let E = ((toBase58String(a.caller.bytes) + "_") + toBase58String(c))
380- let V = assetBalance(Address(a.caller.bytes), c)
381- let l = assetBalance(this, b)
382- let m = {
383- let n = getInteger(this, "StakeBalance")
384- if ($isInstanceOf(n, "Int"))
498+ let ae = 1
499+ let N = ((toBase58String(a.caller.bytes) + "_") + toBase58String(c))
500+ let af = assetBalance(Address(a.caller.bytes), c)
501+ let v = assetBalance(this, g)
502+ let w = {
503+ let e = getInteger(this, "StakeBalance")
504+ if ($isInstanceOf(e, "Int"))
385505 then {
386- let o = n
387- o
506+ let f = e
507+ f
388508 }
389509 else 0
390510 }
391- let p = (l - m)
392- let q = {
393- let n = getInteger(this, "PrizeHeight")
394- if ($isInstanceOf(n, "Int"))
511+ let x = {
512+ let e = getInteger(this, "FundBox")
513+ if ($isInstanceOf(e, "Int"))
395514 then {
396- let o = n
397- o
515+ let f = e
516+ f
398517 }
399518 else 0
400519 }
401- let r = if (if ((q == 0))
402- then (p == 0)
403- else false)
404- then 0
405- else if (if ((q == 0))
406- then (p != 0)
407- else false)
408- then height
409- else if (if ((q != 0))
410- then (p != 0)
411- else false)
412- then q
413- else 0
414- let u = {
415- let n = getInteger(this, "Delay")
416- if ($isInstanceOf(n, "Int"))
520+ let y = {
521+ let e = getInteger(this, "PrizeHeight")
522+ if ($isInstanceOf(e, "Int"))
417523 then {
418- let o = n
419- o
524+ let f = e
525+ f
420526 }
421527 else 0
422528 }
423- let W = {
424- let n = getInteger(this, "DelayCost")
425- if ($isInstanceOf(n, "Int"))
529+ let z = if (if ((y == 0))
530+ then (x == 0)
531+ else false)
532+ then 0
533+ else if (if ((y == 0))
534+ then (x != 0)
535+ else false)
536+ then height
537+ else if (if ((y != 0))
538+ then (x != 0)
539+ else false)
540+ then y
541+ else 0
542+ let A = {
543+ let e = getInteger(this, "Delay")
544+ if ($isInstanceOf(e, "Int"))
426545 then {
427- let o = n
428- o
546+ let f = e
547+ f
548+ }
549+ else 0
550+ }
551+ let ag = {
552+ let e = getInteger(this, "DelayCost")
553+ if ($isInstanceOf(e, "Int"))
554+ then {
555+ let f = e
556+ f
429557 }
430558 else 10
431559 }
432- let h = extract(a.payment)
433- if (if (isDefined(h.assetId))
434- then (extract(h.assetId) == c)
560+ let m = extract(a.payment)
561+ let G = {
562+ let e = getInteger(this, "DevBox")
563+ if ($isInstanceOf(e, "Int"))
564+ then {
565+ let f = e
566+ f
567+ }
568+ else 0
569+ }
570+ if (if (isDefined(m.assetId))
571+ then (extract(m.assetId) == c)
435572 else false)
436- then {
437- let X = h.amount
438- let Y = if ((W == 0))
439- then 1000000000
440- else (2 * W)
441- if ((X >= Y))
442- then {
443- let v = (u + (1440 * U))
444- WriteSet([DataEntry("Delay", v), DataEntry("DelayCost", Y), DataEntry("FundBox", p), DataEntry("PrizeHeight", height)])
445- }
446- else throw((("To delay the release of the reward ONE DAY later than expected, you need " + toString(Y)) + "TROIKAs"))
447- }
573+ then if ((x > 0))
574+ then {
575+ let ah = m.amount
576+ let d = (G + ((m.amount * 5) / 1000))
577+ let ai = if ((ag == 0))
578+ then 1000000000
579+ else (2 * ag)
580+ if ((ah >= ai))
581+ then {
582+ let B = (A + (1440 * ae))
583+ WriteSet([DataEntry("Delay", B), DataEntry("DelayCost", ai), DataEntry("PrizeHeight", z), DataEntry("DevBox", d)])
584+ }
585+ else throw((("To delay the release of the reward ONE DAY later than expected, you need " + toString(ai)) + "TROIKAs"))
586+ }
587+ else throw("You cannot delay the reward before reward is received! Please wait until a reward is available")
448588 else throw("Can Use only Troika Token to Delay Reward")
449589 }
450590
451591
452592
453593 @Callable(a)
454594 func ClaimPrize () = {
455- let b = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
595+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
456596 let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
457- let D = (toBase58String(a.caller.bytes) + "_Staking")
458- let d = (toBase58String(a.caller.bytes) + "_Push")
459- let j = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
460- let f = 7
461- let Z = assetBalance(this, c)
462- let l = assetBalance(this, b)
463- let m = {
464- let n = getInteger(this, "StakeBalance")
465- if ($isInstanceOf(n, "Int"))
597+ let M = (toBase58String(a.caller.bytes) + "_Staking")
598+ let n = (toBase58String(a.caller.bytes) + "_Push")
599+ let t = (toBase58String(a.caller.bytes) + "_UserLastStakeBlock")
600+ let i = 7
601+ let k = 0
602+ let aj = assetBalance(this, c)
603+ let v = assetBalance(this, g)
604+ let w = {
605+ let e = getInteger(this, "StakeBalance")
606+ if ($isInstanceOf(e, "Int"))
466607 then {
467- let o = n
468- o
608+ let f = e
609+ f
469610 }
470611 else 0
471612 }
472- let p = (l - m)
473- let aa = {
474- let n = getInteger(this, d)
475- if ($isInstanceOf(n, "Int"))
613+ let x = {
614+ let e = getInteger(this, "FundBox")
615+ if ($isInstanceOf(e, "Int"))
476616 then {
477- let o = n
478- o
617+ let f = e
618+ f
479619 }
480620 else 0
481621 }
482- let y = {
483- let n = getInteger(this, j)
484- if ($isInstanceOf(n, "Int"))
622+ let R = {
623+ let e = getInteger(this, n)
624+ if ($isInstanceOf(e, "Int"))
485625 then {
486- let o = n
487- o
626+ let f = e
627+ f
488628 }
489629 else 0
490630 }
491- let ab = {
492- let n = getInteger(this, D)
493- if ($isInstanceOf(n, "Int"))
631+ let E = {
632+ let e = getInteger(this, t)
633+ if ($isInstanceOf(e, "Int"))
494634 then {
495- let o = n
496- o
635+ let f = e
636+ f
497637 }
498638 else 0
499639 }
500- let u = {
501- let n = getInteger(this, "Delay")
502- if ($isInstanceOf(n, "Int"))
640+ let ak = {
641+ let e = getInteger(this, M)
642+ if ($isInstanceOf(e, "Int"))
503643 then {
504- let o = n
505- o
644+ let f = e
645+ f
506646 }
507647 else 0
508648 }
509- let ac = getStringValue(this, "HighestPushAddress")
510- let ad = {
511- let n = getInteger(this, "PrizeHeight")
512- if ($isInstanceOf(n, "Int"))
649+ let A = {
650+ let e = getInteger(this, "Delay")
651+ if ($isInstanceOf(e, "Int"))
513652 then {
514- let o = n
515- o
653+ let f = e
654+ f
516655 }
517656 else 0
518657 }
519- let s = {
520- let n = getInteger(this, "HighestPush")
521- if ($isInstanceOf(n, "Int"))
658+ let al = getStringValue(this, "HighestPushAddress")
659+ let am = {
660+ let e = getInteger(this, "PrizeHeight")
661+ if ($isInstanceOf(e, "Int"))
522662 then {
523- let o = n
524- o
663+ let f = e
664+ f
525665 }
526666 else 0
527667 }
528- if (if ((p == 0))
668+ let r = {
669+ let e = getInteger(this, "HighestPush")
670+ if ($isInstanceOf(e, "Int"))
671+ then {
672+ let f = e
673+ f
674+ }
675+ else 0
676+ }
677+ let p = (toBase58String(a.caller.bytes) + "_refs")
678+ let q = {
679+ let e = getInteger(this, p)
680+ if ($isInstanceOf(e, "Int"))
681+ then {
682+ let f = e
683+ f
684+ }
685+ else 0
686+ }
687+ if (if ((x == 0))
529688 then true
530- else (10000000000 > Z))
689+ else (10000000000 > aj))
531690 then throw("No prize to Claim or Not enough Govern Token en Contract (Min 100 Troika)")
532- else if ((toBase58String(a.caller.bytes) != ac))
691+ else if ((toBase58String(a.caller.bytes) != al))
533692 then throw("You are not the winner hence cannot claim the reward ")
534- else if (if ((100000000 > ab))
535- then ((1440 * f) > y)
693+ else if (if ((100000000 > ak))
694+ then ((1440 * i) > E)
536695 else false)
537696 then throw("You have to Stake ASIMI Token to claim reward ")
538- else if (if ((height > (ad + u)))
539- then (aa >= s)
697+ else if (if ((height > (am + A)))
698+ then (R >= r)
540699 else false)
541- then ScriptResult(WriteSet([DataEntry(ac, p), DataEntry("FundBox", 0), DataEntry("HighestPush", 0), DataEntry(d, 0), DataEntry("HighestPushAddress", ""), DataEntry("PrizeHeight", 0), DataEntry("Delay", 0), DataEntry("DelayCost", 0), DataEntry("LastWinner", ac), DataEntry("LastPrize", p)]), TransferSet([ScriptTransfer(a.caller, p, b), ScriptTransfer(a.caller, 1000000000, c)]))
542- else throw("You have to deposit 100 GovernToken to claim Reward and/or wait till countown is finished")
700+ then if ((q >= k))
701+ then ScriptResult(WriteSet([DataEntry(al, x), DataEntry("FundBox", 0), DataEntry("HighestPush", 0), DataEntry(n, 0), DataEntry("HighestPushAddress", ""), DataEntry("PrizeHeight", 0), DataEntry("Delay", 0), DataEntry("DelayCost", 0), DataEntry("LastWinner", al), DataEntry("LastPrize", x)]), TransferSet([ScriptTransfer(a.caller, x, g), ScriptTransfer(a.caller, 1000000000, c)]))
702+ else throw("You have to have 10 referrals already staking for a minimum of 10 days to Claim the prize")
703+ else throw("You have to be the user with the highest Push and wait till countown is finished, to claim Reward")
704+ }
705+
706+
707+
708+@Callable(a)
709+func Addmentor (an) = {
710+ let g = base58'DEjmrvdViZH7trtuAqaKQFjNjfbK6D7yMHm18UQ8Hj21'
711+ let c = base58'27RauQwTvdbcPqeFkzoTf5WPt3HtEAmRDVxprWUNp6bA'
712+ let ao = (toBase58String(a.caller.bytes) + "_Mentor")
713+ if ((an != ""))
714+ then WriteSet([DataEntry(ao, an)])
715+ else throw("Mentor's Address cannot be empty")
543716 }
544717
545718

github/deemru/w8io/873ac7e 
120.41 ms