tx · 3CyTgfTSq4jXkpZoi98f7Ku3naXpdwmxcFb1LwPHmWVJ

3N17JMn4WESkhCSrcEwdADBZFAe8uiuvCGQ:  -0.01400000 Waves

2021.10.08 22:58 [1737730] smart account 3N17JMn4WESkhCSrcEwdADBZFAe8uiuvCGQ > SELF 0.00000000 Waves

{ "type": 13, "id": "3CyTgfTSq4jXkpZoi98f7Ku3naXpdwmxcFb1LwPHmWVJ", "fee": 1400000, "feeAssetId": null, "timestamp": 1633723134027, "version": 2, "chainId": 84, "sender": "3N17JMn4WESkhCSrcEwdADBZFAe8uiuvCGQ", "senderPublicKey": "BMLuSYJ8rvQD55waCoKpzCBhJAbY8s9pp4V5ZgxuzCBD", "proofs": [ "pZF5Ynr6zqaw5BhKi7G2BmjiAxe1tqGSeEHcszZYm8DYMyagar8FKJnMyadwkvP3RGPfGMYiAAeYu375T7iNdQd" ], "script": "base64:AAIEAAAAAAAAABIIAhIAEgASABIAEgASABIAEgAAAAAQAAAAAApBNEFBc3NldElEAQAAACByarr7pbGvbKjC25EQtAxsVoAzV+UMwNJVwz0ikDXgtQAAAAAHV2VlazBUUwAAAAF7Ik7hQAAAAAAEd2VlawAAAAAAJAyEAAAAAAAJcGF1c2V0aW1lAAAAAAAA27oAAAAAABJjdXJyZW50cnVubmluZ3dlZWsJAABkAAAAAgkAAGkAAAACCQAAZQAAAAIIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wBQAAAAdXZWVrMFRTBQAAAAR3ZWVrAAAAAAAAAAABAAAAAA5UU1VwdG9QYXN0V2VlawkAAGQAAAACBQAAAAdXZWVrMFRTCQAAaAAAAAIJAABlAAAAAgUAAAASY3VycmVudHJ1bm5pbmd3ZWVrAAAAAAAAAAABBQAAAAR3ZWVrAAAAAA92b3RpbmdwYXVzZXRpbWUJAABkAAAAAgUAAAAOVFNVcHRvUGFzdFdlZWsFAAAACXBhdXNldGltZQAAAAAHbWVzc2FnZQIAAAAkPGgxPllvdSBWb3RlZCBTdWNjZXNzZnVsbHkhPC9oMT48YnI+AAAAAA9hdHRhY2hweW10ZXJyb3ICAAAAOVdlZWtseSBWb3RlIE5lZWQgMC4wMDAxIEE0QSBUb2tlbiBhcyBBdHRhY2hlZCBwYXltZW50WzFdLgAAAAALbWluYmFsZXJyb3ICAAAAZU1pbmltdW0gMSBBNEEgaXMgcmVxdWlyZWQgb24gWW91ciBBZGRyZXNzIHRvIFZvdGUuIFBsZWFzZSBNaW50IG9yIGhvbGQgbWluaW11bSAxIEE0QSBvbiB0aGlzIEFkZHJlc3MuAAAAAAhhc3NldGVycgkAASwAAAACCQABLAAAAAICAAAAKEluY29ycmVjdCBhc3NldCBhdHRhY2hlZCwgcGxlYXNlIGF0dGFjaCAJAAJYAAAAAQUAAAAKQTRBQXNzZXRJRAIAAAAOIEFzc2V0SUQgT25seS4AAAAACW1pbmFtdGVycgIAAAAnUGxlYXNlIEF0dGFjaCBFeGFjdCAwLjAwMDEgQTRBIFRvIFZvdGUuAAAAAA5mZXRjaHRvdGFsdHhucwQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAAApUb3RhbF9UeG5zAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAAAAAACXRvdGFsdHhucwkAAGQAAAACBQAAAA5mZXRjaHRvdGFsdHhucwAAAAAAAAAAAQAAAAAUZmV0Y2h0b3RhbHR4bnNvZndlZWsEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABpAAAAAEFAAAAEmN1cnJlbnRydW5uaW5nd2VlawIAAAALX1RvdGFsX1R4bnMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAAAAAAPdG90YWx0eG5zb2Z3ZWVrCQAAZAAAAAIFAAAAFGZldGNodG90YWx0eG5zb2Z3ZWVrAAAAAAAAAAABAAAACAAAAAFpAQAAAAlDaGFpbmxpbmsAAAAABAAAAA5GYXZvdXJpdGVBc3NldAIAAAAJQ2hhaW5saW5rBAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQUAAAAPYXR0YWNocHltdGVycm9yBAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWNoZWNrYXNzZXRiYWwJAAPwAAAAAgkBAAAAFGFkZHJlc3NGcm9tUHVibGljS2V5AAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BQAAAApBNEFBc3NldElEBAAAABRmZXRjaHVzZXJ3ZWVrbHl2b3RlcwQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABR1c2VydG90YWx3ZWVrbHl2b3RlcwkAAGQAAAACBQAAABRmZXRjaHVzZXJ3ZWVrbHl2b3RlcwAAAAAAAAAAAQQAAAAcZmV0Y2h1c2Vyd2Vla2x5dm90ZXNmb3Jhc3NldAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAGkAAAAAQUAAAASY3VycmVudHJ1bm5pbmd3ZWVrAgAAABJfVXNlcl9Ub3RhbF9Wb3Rlc18FAAAACmN1cnJlbnRLZXkCAAAAAS0FAAAADkZhdm91cml0ZUFzc2V0AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAHHVzZXJ0b3RhbHdlZWtseXZvdGVzZm9yYXNzZXQJAABkAAAAAgUAAAAcZmV0Y2h1c2Vyd2Vla2x5dm90ZXNmb3Jhc3NldAAAAAAAAAAAAQQAAAAOZmV0Y2h1c2Vydm90ZXMEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABFVc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAA51c2VydG90YWx2b3RlcwkAAGQAAAACBQAAAA5mZXRjaHVzZXJ2b3RlcwAAAAAAAAAAAQQAAAAWZmV0Y2h1c2Vydm90ZXNmb3Jhc3NldAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAABdVc2VyX1RvdGFsX0Fzc2V0X1ZvdGVzXwUAAAAKY3VycmVudEtleQIAAAABXwUAAAAORmF2b3VyaXRlQXNzZXQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAWdXNlcnRvdGFsdm90ZXNmb3Jhc3NldAkAAGQAAAACBQAAABZmZXRjaHVzZXJ2b3Rlc2ZvcmFzc2V0AAAAAAAAAAABBAAAAA9mZXRjaHRvdGFsdm90ZXMEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAAAxUb3RhbF9Wb3Rlc18FAAAADkZhdm91cml0ZUFzc2V0AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAD2Fzc2V0dG90YWx2b3RlcwkAAGQAAAACBQAAAA9mZXRjaHRvdGFsdm90ZXMAAAAAAAAAAAEEAAAAFXdlZWtseWZldGNodG90YWx2b3RlcwQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAADV9Ub3RhbF9Wb3Rlc18FAAAADkZhdm91cml0ZUFzc2V0AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAFXdlZWtseWFzc2V0dG90YWx2b3RlcwkAAGQAAAACBQAAABV3ZWVrbHlmZXRjaHRvdGFsdm90ZXMAAAAAAAAAAAEDCQAAZgAAAAIAAAAAAAX14QAFAAAADWNoZWNrYXNzZXRiYWwJAAACAAAAAQUAAAALbWluYmFsZXJyb3IDCQEAAAACIT0AAAACCAUAAAADcG10AAAAB2Fzc2V0SWQFAAAACkE0QUFzc2V0SUQJAAACAAAAAQUAAAAIYXNzZXRlcnIDCQEAAAACIT0AAAACCAUAAAADcG10AAAABmFtb3VudAAAAAAAAAAnEAkAAAIAAAABBQAAAAltaW5hbXRlcnIDCQAAZgAAAAIFAAAAD3ZvdGluZ3BhdXNldGltZQgFAAAACWxhc3RCbG9jawAAAAl0aW1lc3RhbXAJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAGlZvdGluZyBpcyBwYXVzZWQgZm9yIE5leHQgCQABpAAAAAEJAABpAAAAAgkAAGUAAAACBQAAAA92b3RpbmdwYXVzZXRpbWUIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wAAAAAAAAAOpgAgAAAAggTWludXRlcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAKVG90YWxfVHhucwUAAAAJdG90YWx0eG5zCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAASY3VycmVudHJ1bm5pbmd3ZWVrAgAAAAtfVG90YWxfVHhucwUAAAAPdG90YWx0eG5zb2Z3ZWVrCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABNDdXJyZW50X1ZvdGluZ19XZWVrBQAAABJjdXJyZW50cnVubmluZ3dlZWsJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAMVG90YWxfVm90ZXNfBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAPYXNzZXR0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAADV9Ub3RhbF9Wb3Rlc18FAAAADkZhdm91cml0ZUFzc2V0BQAAABV3ZWVrbHlhc3NldHRvdGFsdm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAARVXNlcl9Ub3RhbF9Wb3Rlc18FAAAACmN1cnJlbnRLZXkFAAAADnVzZXJ0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQUAAAAUdXNlcnRvdGFsd2Vla2x5dm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQIAAAABLQUAAAAORmF2b3VyaXRlQXNzZXQFAAAAHHVzZXJ0b3RhbHdlZWtseXZvdGVzZm9yYXNzZXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAA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eQAAAAIJAAEsAAAAAgIAAAAMVG90YWxfVm90ZXNfBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAPYXNzZXR0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAADV9Ub3RhbF9Wb3Rlc18FAAAADkZhdm91cml0ZUFzc2V0BQAAABV3ZWVrbHlhc3NldHRvdGFsdm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAARVXNlcl9Ub3RhbF9Wb3Rlc18FAAAACmN1cnJlbnRLZXkFAAAADnVzZXJ0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQUAAAAUdXNlcnRvdGFsd2Vla2x5dm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQIAAAABLQUAAAAORmF2b3VyaXRlQXNzZXQFAAAAHHVzZXJ0b3RhbHdlZWtseXZvdGVzZm9yYXNzZXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAF1VzZXJfVG90YWxfQXNzZXRfVm90ZXNfBQAAAApjdXJyZW50S2V5AgAAAAFfBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAWdXNlcnRvdGFsdm90ZXNmb3Jhc3NldAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAdtZXNzYWdlBQAAAAdtZXNzYWdlBQAAAANuaWwAAAABaQEAAAAFU3VzaGkAAAAABAAAAA5GYXZvdXJpdGVBc3NldAIAAAAFU3VzaGkEAAAAA3BtdAMJ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AAAAAQUAAAAJbWluYW10ZXJyAwkAAGYAAAACBQAAAA92b3RpbmdwYXVzZXRpbWUIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAABpWb3RpbmcgaXMgcGF1c2VkIGZvciBOZXh0IAkAAaQAAAABCQAAaQAAAAIJAABlAAAAAgUAAAAPdm90aW5ncGF1c2V0aW1lCAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAAAAAAAAADqYAIAAAAIIE1pbnV0ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAClRvdGFsX1R4bnMFAAAACXRvdGFsdHhucwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABpAAAAAEFAAAAEmN1cnJlbnRydW5uaW5nd2VlawIAAAALX1RvdGFsX1R4bnMFAAAAD3RvdGFsdHhuc29md2VlawkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAATQ3VycmVudF9Wb3RpbmdfV2VlawUAAAASY3VycmVudHJ1bm5pbmd3ZWVrCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAADFRvdGFsX1ZvdGVzXwUAAAAORmF2b3VyaXRlQXNzZXQFAAAAD2Fzc2V0dG90YWx2b3RlcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAGkAAAAAQUAAAASY3VycmVudHJ1bm5pbmd3ZWVrAgAAAA1fVG90YWxfVm90ZXNfBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAVd2Vla2x5YXNzZXR0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAEVVzZXJfVG90YWxfVm90ZXNfBQAAAApjdXJyZW50S2V5BQAAAA51c2VydG90YWx2b3RlcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAGkAAAAAQUAAAASY3VycmVudHJ1bm5pbmd3ZWVrAgAAABJfVXNlcl9Ub3RhbF9Wb3Rlc18FAAAACmN1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AOpgAgAAAAggTWludXRlcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAKVG90YWxfVHhucwUAAAAJdG90YWx0eG5zCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAASY3VycmVudHJ1bm5pbmd3ZWVrAgAAAAtfVG90YWxfVHhucwUAAAAPdG90YWx0eG5zb2Z3ZWVrCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABNDdXJyZW50X1ZvdGluZ19XZWVrBQAAABJjdXJyZW50cnVubmluZ3dlZWsJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAMVG90YWxfVm90ZXNfBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAPYXNzZXR0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAADV9Ub3RhbF9Wb3Rlc18FAAAADkZhdm91cml0ZUFzc2V0BQAAABV3ZWVrbHlhc3NldHRvdGFsdm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAARVXNlcl9Ub3RhbF9Wb3Rlc18FAAAACmN1cnJlbnRLZXkFAAAADnVzZXJ0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQUAAAAUdXNlcnRvdGFsd2Vla2x5dm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQIAAAABLQUAAAAORmF2b3VyaXRlQXNzZXQFAAAAHHVzZXJ0b3RhbHdlZWts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dGVnZXJFbnRyeQAAAAICAAAAE0N1cnJlbnRfVm90aW5nX1dlZWsFAAAAEmN1cnJlbnRydW5uaW5nd2VlawkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAAAxUb3RhbF9Wb3Rlc18FAAAADkZhdm91cml0ZUFzc2V0BQAAAA9hc3NldHRvdGFsdm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABpAAAAAEFAAAAEmN1cnJlbnRydW5uaW5nd2VlawIAAAANX1RvdGFsX1ZvdGVzXwUAAAAORmF2b3VyaXRlQXNzZXQFAAAAFXdlZWtseWFzc2V0dG90YWx2b3RlcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAABFVc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQUAAAAOdXNlcnRvdGFsdm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABpAAAAAEFAAAAEmN1cnJlbnRydW5uaW5nd2VlawIAAAASX1VzZXJfVG90YWxfVm90ZXNfBQAAAApjdXJyZW50S2V5BQAAABR1c2VydG90YWx3ZWVrbHl2b3RlcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABpAAAAAEFAAAAEmN1cnJlbnRydW5uaW5nd2VlawIAAAASX1VzZXJfVG90YWxfVm90ZXNfBQAAAApjdXJyZW50S2V5AgAAAAEtBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAcdXNlcnRvdGFsd2Vla2x5dm90ZXNmb3Jhc3NldAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAXVXNlcl9Ub3RhbF9Bc3NldF9Wb3Rlc18FAAAACmN1cnJlbnRLZXkCAAAAAV8FAAAADkZhdm91cml0ZUFzc2V0BQAAABZ1c2VydG90YWx2b3Rlc2ZvcmFzc2V0CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAA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AAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAADV9Ub3RhbF9Wb3Rlc18FAAAADkZhdm91cml0ZUFzc2V0BQAAABV3ZWVrbHlhc3NldHRvdGFsdm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAARVXNlcl9Ub3RhbF9Wb3Rlc18FAAAACmN1cnJlbnRLZXkFAAAADnVzZXJ0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQUAAAAUdXNlcnRvdGFsd2Vla2x5dm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQIAAAABLQUAAAAORmF2b3VyaXRlQXNzZXQFAAAAHHVzZXJ0b3RhbHdlZWtseXZvdGVzZm9yYXNzZXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAF1VzZXJfVG90YWxfQXNzZXRfVm90ZXNfBQAAAApjdXJyZW50S2V5AgAAAAFfBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAWdXNlcnRvdGFsdm90ZXNmb3Jhc3NldAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAdtZXNzYWdlBQAAAAdtZXNzYWdlBQAAAANuaWwAAAABaQEAAAAEUFJDWQAAAAAEAAAADkZhdm91cml0ZUFzc2V0AgAAAAdQcml2YWN5BAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQUAAAAPYXR0YWNocHltdGVycm9yBAAAAApjdXJyZW50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SWQFAAAACkE0QUFzc2V0SUQJAAACAAAAAQUAAAAIYXNzZXRlcnIDCQEAAAACIT0AAAACCAUAAAADcG10AAAABmFtb3VudAAAAAAAAAAnEAkAAAIAAAABBQAAAAltaW5hbXRlcnIDCQAAZgAAAAIFAAAAD3ZvdGluZ3BhdXNldGltZQgFAAAACWxhc3RCbG9jawAAAAl0aW1lc3RhbXAJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAGlZvdGluZyBpcyBwYXVzZWQgZm9yIE5leHQgCQABpAAAAAEJAABpAAAAAgkAAGUAAAACBQAAAA92b3RpbmdwYXVzZXRpbWUIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wAAAAAAAAAOpgAgAAAAggTWludXRlcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAKVG90YWxfVHhucwUAAAAJdG90YWx0eG5zCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAGkAAAAAQUAAAASY3VycmVudHJ1bm5pbmd3ZWVrAgAAAAtfVG90YWxfVHhucwUAAAAPdG90YWx0eG5zb2Z3ZWVrCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABNDdXJyZW50X1ZvdGluZ19XZWVrBQAAABJjdXJyZW50cnVubmluZ3dlZWsJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAMVG90YWxfVm90ZXNfBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAPYXNzZXR0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAADV9Ub3RhbF9Wb3Rlc18FAAAADkZhdm91cml0ZUFzc2V0BQAAABV3ZWVrbHlhc3NldHRvdGFsdm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAARVXNlcl9Ub3RhbF9Wb3Rlc18FAAAACmN1cnJlbnRLZXkFAAAADnVzZXJ0b3RhbHZvdGVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQUAAAAUdXNlcnRvdGFsd2Vla2x5dm90ZXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABJjdXJyZW50cnVubmluZ3dlZWsCAAAAEl9Vc2VyX1RvdGFsX1ZvdGVzXwUAAAAKY3VycmVudEtleQIAAAABLQUAAAAORmF2b3VyaXRlQXNzZXQFAAAAHHVzZXJ0b3RhbHdlZWtseXZvdGVzZm9yYXNzZXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAF1VzZXJfVG90YWxfQXNzZXRfVm90ZXNfBQAAAApjdXJyZW50S2V5AgAAAAFfBQAAAA5GYXZvdXJpdGVBc3NldAUAAAAWdXNlcnRvdGFsdm90ZXNmb3Jhc3NldAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAdtZXNzYWdlBQAAAAdtZXNzYWdlBQAAAANuaWwAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAACQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleV+EHpk=", "height": 1737730, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3hqk2FwLUuqTB7pFXrsbAbhjQ6aUfTByHcL1dne5fjoS Next: 3RsvnpSXrxUTQXz6JCuPhV11WC9bPYMkikq2eAzFCiEA Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let A4AAssetID = base58'J9VzWPfRSQyCbEv5oWpxLSihigbpbJsGBHJZV9Ct8ook'
4+let A4AAssetID = base58'8hdsVCxPBVEmVUZyyX8Sd98Z9hU7Fny26W96sjKiTw8g'
55
6-let Week0Timestamp = 1628368200000
6+let Week0TS = 1628368200000
77
8-let eachweek = 604800000
9-
10-let eachhour = 3600000
8+let week = 604800000
119
1210 let pausetime = 14400000
1311
14-let currentrunningweek = (((lastBlock.timestamp - Week0Timestamp) / eachweek) + 1)
12+let currentrunningweek = (((lastBlock.timestamp - Week0TS) / week) + 1)
1513
16-let TSUptoPastWeek = (Week0Timestamp + ((currentrunningweek - 1) * eachweek))
14+let TSUptoPastWeek = (Week0TS + ((currentrunningweek - 1) * week))
1715
1816 let votingpausetime = (TSUptoPastWeek + pausetime)
1917
2018 let message = "<h1>You Voted Successfully!</h1><br>"
2119
2220 let attachpymterror = "Weekly Vote Need 0.0001 A4A Token as Attached payment[1]."
21+
22+let minbalerror = "Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address."
23+
24+let asseterr = (("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only.")
25+
26+let minamterr = "Please Attach Exact 0.0001 A4A To Vote."
2327
2428 let fetchtotaltxns = match getInteger(this, "Total_Txns") {
2529 case a: Int =>
9094 }
9195 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
9296 if ((100000000 > checkassetbal))
93- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
97+ then throw(minbalerror)
9498 else if ((pmt.assetId != A4AAssetID))
95- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
99+ then throw(asseterr)
96100 else if ((pmt.amount != 10000))
97- then throw("Please Attach Exact 0.0001 A4A To Vote.")
101+ then throw(minamterr)
98102 else if ((votingpausetime > lastBlock.timestamp))
99103 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
100104 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
153157 }
154158 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
155159 if ((100000000 > checkassetbal))
156- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
160+ then throw(minbalerror)
157161 else if ((pmt.assetId != A4AAssetID))
158- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
162+ then throw(asseterr)
159163 else if ((pmt.amount != 10000))
160- then throw("Please Attach Exact 0.0001 A4A To Vote.")
164+ then throw(minamterr)
161165 else if ((votingpausetime > lastBlock.timestamp))
162166 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
163167 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
216220 }
217221 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
218222 if ((100000000 > checkassetbal))
219- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
223+ then throw(minbalerror)
220224 else if ((pmt.assetId != A4AAssetID))
221- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
225+ then throw(asseterr)
222226 else if ((pmt.amount != 10000))
223- then throw("Please Attach Exact 0.0001 A4A To Vote.")
227+ then throw(minamterr)
224228 else if ((votingpausetime > lastBlock.timestamp))
225229 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
226230 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
279283 }
280284 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
281285 if ((100000000 > checkassetbal))
282- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
286+ then throw(minbalerror)
283287 else if ((pmt.assetId != A4AAssetID))
284- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
288+ then throw(asseterr)
285289 else if ((pmt.amount != 10000))
286- then throw("Please Attach Exact 0.0001 A4A To Vote.")
290+ then throw(minamterr)
287291 else if ((votingpausetime > lastBlock.timestamp))
288292 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
289293 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
342346 }
343347 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
344348 if ((100000000 > checkassetbal))
345- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
349+ then throw(minbalerror)
346350 else if ((pmt.assetId != A4AAssetID))
347- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
351+ then throw(asseterr)
348352 else if ((pmt.amount != 10000))
349- then throw("Please Attach Exact 0.0001 A4A To Vote.")
353+ then throw(minamterr)
350354 else if ((votingpausetime > lastBlock.timestamp))
351355 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
352356 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
405409 }
406410 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
407411 if ((100000000 > checkassetbal))
408- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
412+ then throw(minbalerror)
409413 else if ((pmt.assetId != A4AAssetID))
410- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
414+ then throw(asseterr)
411415 else if ((pmt.amount != 10000))
412- then throw("Please Attach Exact 0.0001 A4A To Vote.")
416+ then throw(minamterr)
413417 else if ((votingpausetime > lastBlock.timestamp))
414418 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
415419 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
468472 }
469473 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
470474 if ((100000000 > checkassetbal))
471- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
475+ then throw(minbalerror)
472476 else if ((pmt.assetId != A4AAssetID))
473- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
477+ then throw(asseterr)
474478 else if ((pmt.amount != 10000))
475- then throw("Please Attach Exact 0.0001 A4A To Vote.")
479+ then throw(minamterr)
476480 else if ((votingpausetime > lastBlock.timestamp))
477481 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
478482 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
481485
482486
483487 @Callable(i)
484-func Privacy () = {
488+func PRCY () = {
485489 let FavouriteAsset = "Privacy"
486490 let pmt = if ((size(i.payments) == 1))
487491 then i.payments[0]
531535 }
532536 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
533537 if ((100000000 > checkassetbal))
534- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
538+ then throw(minbalerror)
535539 else if ((pmt.assetId != A4AAssetID))
536- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
540+ then throw(asseterr)
537541 else if ((pmt.amount != 10000))
538- then throw("Please Attach Exact 0.0001 A4A To Vote.")
542+ then throw(minamterr)
539543 else if ((votingpausetime > lastBlock.timestamp))
540544 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
541545 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let A4AAssetID = base58'J9VzWPfRSQyCbEv5oWpxLSihigbpbJsGBHJZV9Ct8ook'
4+let A4AAssetID = base58'8hdsVCxPBVEmVUZyyX8Sd98Z9hU7Fny26W96sjKiTw8g'
55
6-let Week0Timestamp = 1628368200000
6+let Week0TS = 1628368200000
77
8-let eachweek = 604800000
9-
10-let eachhour = 3600000
8+let week = 604800000
119
1210 let pausetime = 14400000
1311
14-let currentrunningweek = (((lastBlock.timestamp - Week0Timestamp) / eachweek) + 1)
12+let currentrunningweek = (((lastBlock.timestamp - Week0TS) / week) + 1)
1513
16-let TSUptoPastWeek = (Week0Timestamp + ((currentrunningweek - 1) * eachweek))
14+let TSUptoPastWeek = (Week0TS + ((currentrunningweek - 1) * week))
1715
1816 let votingpausetime = (TSUptoPastWeek + pausetime)
1917
2018 let message = "<h1>You Voted Successfully!</h1><br>"
2119
2220 let attachpymterror = "Weekly Vote Need 0.0001 A4A Token as Attached payment[1]."
21+
22+let minbalerror = "Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address."
23+
24+let asseterr = (("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only.")
25+
26+let minamterr = "Please Attach Exact 0.0001 A4A To Vote."
2327
2428 let fetchtotaltxns = match getInteger(this, "Total_Txns") {
2529 case a: Int =>
2630 a
2731 case _ =>
2832 0
2933 }
3034
3135 let totaltxns = (fetchtotaltxns + 1)
3236
3337 let fetchtotaltxnsofweek = match getInteger(this, (toString(currentrunningweek) + "_Total_Txns")) {
3438 case a: Int =>
3539 a
3640 case _ =>
3741 0
3842 }
3943
4044 let totaltxnsofweek = (fetchtotaltxnsofweek + 1)
4145
4246 @Callable(i)
4347 func Chainlink () = {
4448 let FavouriteAsset = "Chainlink"
4549 let pmt = if ((size(i.payments) == 1))
4650 then i.payments[0]
4751 else throw(attachpymterror)
4852 let currentKey = toBase58String(i.caller.bytes)
4953 let checkassetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), A4AAssetID)
5054 let fetchuserweeklyvotes = match getInteger(this, ((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey)) {
5155 case a: Int =>
5256 a
5357 case _ =>
5458 0
5559 }
5660 let usertotalweeklyvotes = (fetchuserweeklyvotes + 1)
5761 let fetchuserweeklyvotesforasset = match getInteger(this, ((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset)) {
5862 case a: Int =>
5963 a
6064 case _ =>
6165 0
6266 }
6367 let usertotalweeklyvotesforasset = (fetchuserweeklyvotesforasset + 1)
6468 let fetchuservotes = match getInteger(this, ("User_Total_Votes_" + currentKey)) {
6569 case a: Int =>
6670 a
6771 case _ =>
6872 0
6973 }
7074 let usertotalvotes = (fetchuservotes + 1)
7175 let fetchuservotesforasset = match getInteger(this, ((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset)) {
7276 case a: Int =>
7377 a
7478 case _ =>
7579 0
7680 }
7781 let usertotalvotesforasset = (fetchuservotesforasset + 1)
7882 let fetchtotalvotes = match getInteger(this, ("Total_Votes_" + FavouriteAsset)) {
7983 case a: Int =>
8084 a
8185 case _ =>
8286 0
8387 }
8488 let assettotalvotes = (fetchtotalvotes + 1)
8589 let weeklyfetchtotalvotes = match getInteger(this, ((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset)) {
8690 case a: Int =>
8791 a
8892 case _ =>
8993 0
9094 }
9195 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
9296 if ((100000000 > checkassetbal))
93- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
97+ then throw(minbalerror)
9498 else if ((pmt.assetId != A4AAssetID))
95- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
99+ then throw(asseterr)
96100 else if ((pmt.amount != 10000))
97- then throw("Please Attach Exact 0.0001 A4A To Vote.")
101+ then throw(minamterr)
98102 else if ((votingpausetime > lastBlock.timestamp))
99103 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
100104 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
101105 }
102106
103107
104108
105109 @Callable(i)
106110 func Dent () = {
107111 let FavouriteAsset = "Dent"
108112 let pmt = if ((size(i.payments) == 1))
109113 then i.payments[0]
110114 else throw(attachpymterror)
111115 let currentKey = toBase58String(i.caller.bytes)
112116 let checkassetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), A4AAssetID)
113117 let fetchuserweeklyvotes = match getInteger(this, ((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey)) {
114118 case a: Int =>
115119 a
116120 case _ =>
117121 0
118122 }
119123 let usertotalweeklyvotes = (fetchuserweeklyvotes + 1)
120124 let fetchuserweeklyvotesforasset = match getInteger(this, ((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset)) {
121125 case a: Int =>
122126 a
123127 case _ =>
124128 0
125129 }
126130 let usertotalweeklyvotesforasset = (fetchuserweeklyvotesforasset + 1)
127131 let fetchuservotes = match getInteger(this, ("User_Total_Votes_" + currentKey)) {
128132 case a: Int =>
129133 a
130134 case _ =>
131135 0
132136 }
133137 let usertotalvotes = (fetchuservotes + 1)
134138 let fetchuservotesforasset = match getInteger(this, ((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset)) {
135139 case a: Int =>
136140 a
137141 case _ =>
138142 0
139143 }
140144 let usertotalvotesforasset = (fetchuservotesforasset + 1)
141145 let fetchtotalvotes = match getInteger(this, ("Total_Votes_" + FavouriteAsset)) {
142146 case a: Int =>
143147 a
144148 case _ =>
145149 0
146150 }
147151 let assettotalvotes = (fetchtotalvotes + 1)
148152 let weeklyfetchtotalvotes = match getInteger(this, ((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset)) {
149153 case a: Int =>
150154 a
151155 case _ =>
152156 0
153157 }
154158 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
155159 if ((100000000 > checkassetbal))
156- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
160+ then throw(minbalerror)
157161 else if ((pmt.assetId != A4AAssetID))
158- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
162+ then throw(asseterr)
159163 else if ((pmt.amount != 10000))
160- then throw("Please Attach Exact 0.0001 A4A To Vote.")
164+ then throw(minamterr)
161165 else if ((votingpausetime > lastBlock.timestamp))
162166 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
163167 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
164168 }
165169
166170
167171
168172 @Callable(i)
169173 func Sushi () = {
170174 let FavouriteAsset = "Sushi"
171175 let pmt = if ((size(i.payments) == 1))
172176 then i.payments[0]
173177 else throw(attachpymterror)
174178 let currentKey = toBase58String(i.caller.bytes)
175179 let checkassetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), A4AAssetID)
176180 let fetchuserweeklyvotes = match getInteger(this, ((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey)) {
177181 case a: Int =>
178182 a
179183 case _ =>
180184 0
181185 }
182186 let usertotalweeklyvotes = (fetchuserweeklyvotes + 1)
183187 let fetchuserweeklyvotesforasset = match getInteger(this, ((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset)) {
184188 case a: Int =>
185189 a
186190 case _ =>
187191 0
188192 }
189193 let usertotalweeklyvotesforasset = (fetchuserweeklyvotesforasset + 1)
190194 let fetchuservotes = match getInteger(this, ("User_Total_Votes_" + currentKey)) {
191195 case a: Int =>
192196 a
193197 case _ =>
194198 0
195199 }
196200 let usertotalvotes = (fetchuservotes + 1)
197201 let fetchuservotesforasset = match getInteger(this, ((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset)) {
198202 case a: Int =>
199203 a
200204 case _ =>
201205 0
202206 }
203207 let usertotalvotesforasset = (fetchuservotesforasset + 1)
204208 let fetchtotalvotes = match getInteger(this, ("Total_Votes_" + FavouriteAsset)) {
205209 case a: Int =>
206210 a
207211 case _ =>
208212 0
209213 }
210214 let assettotalvotes = (fetchtotalvotes + 1)
211215 let weeklyfetchtotalvotes = match getInteger(this, ((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset)) {
212216 case a: Int =>
213217 a
214218 case _ =>
215219 0
216220 }
217221 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
218222 if ((100000000 > checkassetbal))
219- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
223+ then throw(minbalerror)
220224 else if ((pmt.assetId != A4AAssetID))
221- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
225+ then throw(asseterr)
222226 else if ((pmt.amount != 10000))
223- then throw("Please Attach Exact 0.0001 A4A To Vote.")
227+ then throw(minamterr)
224228 else if ((votingpausetime > lastBlock.timestamp))
225229 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
226230 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
227231 }
228232
229233
230234
231235 @Callable(i)
232236 func Compound () = {
233237 let FavouriteAsset = "Compound"
234238 let pmt = if ((size(i.payments) == 1))
235239 then i.payments[0]
236240 else throw(attachpymterror)
237241 let currentKey = toBase58String(i.caller.bytes)
238242 let checkassetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), A4AAssetID)
239243 let fetchuserweeklyvotes = match getInteger(this, ((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey)) {
240244 case a: Int =>
241245 a
242246 case _ =>
243247 0
244248 }
245249 let usertotalweeklyvotes = (fetchuserweeklyvotes + 1)
246250 let fetchuserweeklyvotesforasset = match getInteger(this, ((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset)) {
247251 case a: Int =>
248252 a
249253 case _ =>
250254 0
251255 }
252256 let usertotalweeklyvotesforasset = (fetchuserweeklyvotesforasset + 1)
253257 let fetchuservotes = match getInteger(this, ("User_Total_Votes_" + currentKey)) {
254258 case a: Int =>
255259 a
256260 case _ =>
257261 0
258262 }
259263 let usertotalvotes = (fetchuservotes + 1)
260264 let fetchuservotesforasset = match getInteger(this, ((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset)) {
261265 case a: Int =>
262266 a
263267 case _ =>
264268 0
265269 }
266270 let usertotalvotesforasset = (fetchuservotesforasset + 1)
267271 let fetchtotalvotes = match getInteger(this, ("Total_Votes_" + FavouriteAsset)) {
268272 case a: Int =>
269273 a
270274 case _ =>
271275 0
272276 }
273277 let assettotalvotes = (fetchtotalvotes + 1)
274278 let weeklyfetchtotalvotes = match getInteger(this, ((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset)) {
275279 case a: Int =>
276280 a
277281 case _ =>
278282 0
279283 }
280284 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
281285 if ((100000000 > checkassetbal))
282- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
286+ then throw(minbalerror)
283287 else if ((pmt.assetId != A4AAssetID))
284- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
288+ then throw(asseterr)
285289 else if ((pmt.amount != 10000))
286- then throw("Please Attach Exact 0.0001 A4A To Vote.")
290+ then throw(minamterr)
287291 else if ((votingpausetime > lastBlock.timestamp))
288292 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
289293 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
290294 }
291295
292296
293297
294298 @Callable(i)
295299 func Haven () = {
296300 let FavouriteAsset = "Haven"
297301 let pmt = if ((size(i.payments) == 1))
298302 then i.payments[0]
299303 else throw(attachpymterror)
300304 let currentKey = toBase58String(i.caller.bytes)
301305 let checkassetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), A4AAssetID)
302306 let fetchuserweeklyvotes = match getInteger(this, ((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey)) {
303307 case a: Int =>
304308 a
305309 case _ =>
306310 0
307311 }
308312 let usertotalweeklyvotes = (fetchuserweeklyvotes + 1)
309313 let fetchuserweeklyvotesforasset = match getInteger(this, ((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset)) {
310314 case a: Int =>
311315 a
312316 case _ =>
313317 0
314318 }
315319 let usertotalweeklyvotesforasset = (fetchuserweeklyvotesforasset + 1)
316320 let fetchuservotes = match getInteger(this, ("User_Total_Votes_" + currentKey)) {
317321 case a: Int =>
318322 a
319323 case _ =>
320324 0
321325 }
322326 let usertotalvotes = (fetchuservotes + 1)
323327 let fetchuservotesforasset = match getInteger(this, ((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset)) {
324328 case a: Int =>
325329 a
326330 case _ =>
327331 0
328332 }
329333 let usertotalvotesforasset = (fetchuservotesforasset + 1)
330334 let fetchtotalvotes = match getInteger(this, ("Total_Votes_" + FavouriteAsset)) {
331335 case a: Int =>
332336 a
333337 case _ =>
334338 0
335339 }
336340 let assettotalvotes = (fetchtotalvotes + 1)
337341 let weeklyfetchtotalvotes = match getInteger(this, ((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset)) {
338342 case a: Int =>
339343 a
340344 case _ =>
341345 0
342346 }
343347 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
344348 if ((100000000 > checkassetbal))
345- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
349+ then throw(minbalerror)
346350 else if ((pmt.assetId != A4AAssetID))
347- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
351+ then throw(asseterr)
348352 else if ((pmt.amount != 10000))
349- then throw("Please Attach Exact 0.0001 A4A To Vote.")
353+ then throw(minamterr)
350354 else if ((votingpausetime > lastBlock.timestamp))
351355 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
352356 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
353357 }
354358
355359
356360
357361 @Callable(i)
358362 func PirateChain () = {
359363 let FavouriteAsset = "PirateChain"
360364 let pmt = if ((size(i.payments) == 1))
361365 then i.payments[0]
362366 else throw(attachpymterror)
363367 let currentKey = toBase58String(i.caller.bytes)
364368 let checkassetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), A4AAssetID)
365369 let fetchuserweeklyvotes = match getInteger(this, ((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey)) {
366370 case a: Int =>
367371 a
368372 case _ =>
369373 0
370374 }
371375 let usertotalweeklyvotes = (fetchuserweeklyvotes + 1)
372376 let fetchuserweeklyvotesforasset = match getInteger(this, ((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset)) {
373377 case a: Int =>
374378 a
375379 case _ =>
376380 0
377381 }
378382 let usertotalweeklyvotesforasset = (fetchuserweeklyvotesforasset + 1)
379383 let fetchuservotes = match getInteger(this, ("User_Total_Votes_" + currentKey)) {
380384 case a: Int =>
381385 a
382386 case _ =>
383387 0
384388 }
385389 let usertotalvotes = (fetchuservotes + 1)
386390 let fetchuservotesforasset = match getInteger(this, ((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset)) {
387391 case a: Int =>
388392 a
389393 case _ =>
390394 0
391395 }
392396 let usertotalvotesforasset = (fetchuservotesforasset + 1)
393397 let fetchtotalvotes = match getInteger(this, ("Total_Votes_" + FavouriteAsset)) {
394398 case a: Int =>
395399 a
396400 case _ =>
397401 0
398402 }
399403 let assettotalvotes = (fetchtotalvotes + 1)
400404 let weeklyfetchtotalvotes = match getInteger(this, ((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset)) {
401405 case a: Int =>
402406 a
403407 case _ =>
404408 0
405409 }
406410 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
407411 if ((100000000 > checkassetbal))
408- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
412+ then throw(minbalerror)
409413 else if ((pmt.assetId != A4AAssetID))
410- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
414+ then throw(asseterr)
411415 else if ((pmt.amount != 10000))
412- then throw("Please Attach Exact 0.0001 A4A To Vote.")
416+ then throw(minamterr)
413417 else if ((votingpausetime > lastBlock.timestamp))
414418 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
415419 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
416420 }
417421
418422
419423
420424 @Callable(i)
421425 func Monero () = {
422426 let FavouriteAsset = "Monero"
423427 let pmt = if ((size(i.payments) == 1))
424428 then i.payments[0]
425429 else throw(attachpymterror)
426430 let currentKey = toBase58String(i.caller.bytes)
427431 let checkassetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), A4AAssetID)
428432 let fetchuserweeklyvotes = match getInteger(this, ((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey)) {
429433 case a: Int =>
430434 a
431435 case _ =>
432436 0
433437 }
434438 let usertotalweeklyvotes = (fetchuserweeklyvotes + 1)
435439 let fetchuserweeklyvotesforasset = match getInteger(this, ((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset)) {
436440 case a: Int =>
437441 a
438442 case _ =>
439443 0
440444 }
441445 let usertotalweeklyvotesforasset = (fetchuserweeklyvotesforasset + 1)
442446 let fetchuservotes = match getInteger(this, ("User_Total_Votes_" + currentKey)) {
443447 case a: Int =>
444448 a
445449 case _ =>
446450 0
447451 }
448452 let usertotalvotes = (fetchuservotes + 1)
449453 let fetchuservotesforasset = match getInteger(this, ((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset)) {
450454 case a: Int =>
451455 a
452456 case _ =>
453457 0
454458 }
455459 let usertotalvotesforasset = (fetchuservotesforasset + 1)
456460 let fetchtotalvotes = match getInteger(this, ("Total_Votes_" + FavouriteAsset)) {
457461 case a: Int =>
458462 a
459463 case _ =>
460464 0
461465 }
462466 let assettotalvotes = (fetchtotalvotes + 1)
463467 let weeklyfetchtotalvotes = match getInteger(this, ((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset)) {
464468 case a: Int =>
465469 a
466470 case _ =>
467471 0
468472 }
469473 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
470474 if ((100000000 > checkassetbal))
471- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
475+ then throw(minbalerror)
472476 else if ((pmt.assetId != A4AAssetID))
473- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
477+ then throw(asseterr)
474478 else if ((pmt.amount != 10000))
475- then throw("Please Attach Exact 0.0001 A4A To Vote.")
479+ then throw(minamterr)
476480 else if ((votingpausetime > lastBlock.timestamp))
477481 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
478482 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
479483 }
480484
481485
482486
483487 @Callable(i)
484-func Privacy () = {
488+func PRCY () = {
485489 let FavouriteAsset = "Privacy"
486490 let pmt = if ((size(i.payments) == 1))
487491 then i.payments[0]
488492 else throw(attachpymterror)
489493 let currentKey = toBase58String(i.caller.bytes)
490494 let checkassetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), A4AAssetID)
491495 let fetchuserweeklyvotes = match getInteger(this, ((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey)) {
492496 case a: Int =>
493497 a
494498 case _ =>
495499 0
496500 }
497501 let usertotalweeklyvotes = (fetchuserweeklyvotes + 1)
498502 let fetchuserweeklyvotesforasset = match getInteger(this, ((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset)) {
499503 case a: Int =>
500504 a
501505 case _ =>
502506 0
503507 }
504508 let usertotalweeklyvotesforasset = (fetchuserweeklyvotesforasset + 1)
505509 let fetchuservotes = match getInteger(this, ("User_Total_Votes_" + currentKey)) {
506510 case a: Int =>
507511 a
508512 case _ =>
509513 0
510514 }
511515 let usertotalvotes = (fetchuservotes + 1)
512516 let fetchuservotesforasset = match getInteger(this, ((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset)) {
513517 case a: Int =>
514518 a
515519 case _ =>
516520 0
517521 }
518522 let usertotalvotesforasset = (fetchuservotesforasset + 1)
519523 let fetchtotalvotes = match getInteger(this, ("Total_Votes_" + FavouriteAsset)) {
520524 case a: Int =>
521525 a
522526 case _ =>
523527 0
524528 }
525529 let assettotalvotes = (fetchtotalvotes + 1)
526530 let weeklyfetchtotalvotes = match getInteger(this, ((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset)) {
527531 case a: Int =>
528532 a
529533 case _ =>
530534 0
531535 }
532536 let weeklyassettotalvotes = (weeklyfetchtotalvotes + 1)
533537 if ((100000000 > checkassetbal))
534- then throw("Minimum 1 A4A is required on Your Address to Vote. Please Mint or hold minimum 1 A4A on this Address.")
538+ then throw(minbalerror)
535539 else if ((pmt.assetId != A4AAssetID))
536- then throw((("Incorrect asset attached, please attach " + toBase58String(A4AAssetID)) + " AssetID Only."))
540+ then throw(asseterr)
537541 else if ((pmt.amount != 10000))
538- then throw("Please Attach Exact 0.0001 A4A To Vote.")
542+ then throw(minamterr)
539543 else if ((votingpausetime > lastBlock.timestamp))
540544 then throw((("Voting is paused for Next " + toString(((votingpausetime - lastBlock.timestamp) / 60000))) + " Minutes"))
541545 else [IntegerEntry("Total_Txns", totaltxns), IntegerEntry((toString(currentrunningweek) + "_Total_Txns"), totaltxnsofweek), IntegerEntry("Current_Voting_Week", currentrunningweek), IntegerEntry(("Total_Votes_" + FavouriteAsset), assettotalvotes), IntegerEntry(((toString(currentrunningweek) + "_Total_Votes_") + FavouriteAsset), weeklyassettotalvotes), IntegerEntry(("User_Total_Votes_" + currentKey), usertotalvotes), IntegerEntry(((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey), usertotalweeklyvotes), IntegerEntry(((((toString(currentrunningweek) + "_User_Total_Votes_") + currentKey) + "-") + FavouriteAsset), usertotalweeklyvotesforasset), IntegerEntry(((("User_Total_Asset_Votes_" + currentKey) + "_") + FavouriteAsset), usertotalvotesforasset), StringEntry("message", message)]
542546 }
543547
544548
545549 @Verifier(tx)
546550 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
547551

github/deemru/w8io/3ef1775 
147.48 ms