2021.06.04 17:06 [2620392] smart account 3PLHVWCqA9DJPDbadUofTohnCULLauiDWhS > SELF 0.00000000 Waves

{ "type": 13, "id": "FTxXnhgmYJNQxs7MLzXfsVYdgUXue7m8LMAYoWC4PByy", "fee": 1400000, "feeAssetId": null, "timestamp": 1622815494504, "version": 2, "chainId": 87, "sender": "3PLHVWCqA9DJPDbadUofTohnCULLauiDWhS", "senderPublicKey": "gdzFTUAhKUmzuC3fAh3iFZ8Ha9dvTp5WRkRS18eoiPh", "proofs": [ "", "65d4TBLswwFUVUYEgWfQdQq1BqiPfZrZrPLyxBaZS3gvdioD8TrruJW9ydwZ5yzhxYCSKjZ6p3H5AgY6EHkAMyCT", "3ZApnR76ySoEeJcN6x6k8J9uMAc9bbPpH86B3Nd4N1jfvhbGpqgBDazToFagkCyCP4xCvyv9Uyd6bRHgJ2Hz12Vv" ], "script": "base64:AAIEAAAAAAAAABwIAhIAEgASAwoBARIAEgASBwoFGBEYEQESABIAAAAARwAAAAAMYWRtaW5QdWJLZXkxAQAAACC6Cdc7iVmk0V2g//G7M9Cq4TlpD8vivZHWO+5PXqjgEwAAAAAMYWRtaW5QdWJLZXkyAQAAACDCkUSZs9KwtA0ipZFYvYi8oTe7CMv/3YzmlO9bFg5+QAAAAAAMYWRtaW5QdWJLZXkzAQAAACCOHhcueLEHO/RITnozKGB2KHf8meWSMKMgws+oq+kOVQAAAAAUYWRtaW5QdWJLZXlTdGFydFN0b3ABAAAAIM5ZDtzqs16jrhv9V17n63kRNSl0RjKbPBVfPAUbKGF7AAAAABFhZG1pblB1YktleVdhbGxldAEAAAAg5aucswm17jMU3s1MISa5BQRhIxqsOGWqjFG1xaGfzxwAAAAACWtleUFjdGl2ZQIAAAAGYWN0aXZlAAAAAAhrZXlDYXVzZQIAAAAOc2h1dGRvd25fY2F1c2UAAAAAD2tleUxhc3RJbnRlcmVzdAIAAAANbGFzdF9pbnRlcmVzdAAAAAATa2V5VXNlckxhc3RJbnRlcmVzdAIAAAAOX2xhc3RfaW50ZXJlc3QAAAAAEWtleVVzZXJTV09QTG9ja2VkAgAAAAxfU1dPUF9hbW91bnQAAAAAFGtleVVzZXJHZXRCYWNrSGVpZ2h0AgAAAA5fZ2V0QmFja0hlaWdodAAAAAASa2V5VG90YWxTV09QTG9ja2VkAgAAABF0b3RhbF9TV09QX2Ftb3VudAAAAAASa1VzZXJUb3RhbFZvdGVTV09QAgAAABVfdXNlcl90b3RhbF9TV09QX3ZvdGUAAAAAF2tleVVzZXJWb3RlT3B0aW9uQW1vdW50AgAAABNfU1dPUF9vcHRpb25fYW1vdW50AAAAABhrZXlUb3RhbFZvdGVPcHRpb25BbW91bnQCAAAAGHRvdGFsX1NXT1Bfb3B0aW9uX2Ftb3VudAAAAAAYa2V5VXNlclNXT1BDbGFpbWVkQW1vdW50AgAAABRfU1dPUF9jbGFpbWVkX2Ftb3VudAAAAAAca2V5VXNlclNXT1BMYXN0Q2xhaW1lZEFtb3VudAIAAAAZX1NXT1BfbGFzdF9jbGFpbWVkX2Ftb3VudAAAAAALa2V5Vm90ZU5hbWUCAAAACXZvdGVfbmFtZQAAAAANa2V5T3B0aW9uTmFtZQIAAAAMX29wdGlvbl9uYW1lAAAAABRrZXlWb3RpbmdTdGFydEhlaWdodAIAAAAMX3N0YXJ0SGVpZ2h0AAAAAA9rZXlWb3RlRHVyYXRpb24CAAAADl92b3RlX2R1cmF0aW9uAAAAABxrZXlSZXdhcmRQb29sRnJhY3Rpb25DdXJyZW50AgAAAB1fY3VycmVudF9wb29sX2ZyYWN0aW9uX3Jld2FyZAAAAAAda2V5UmV3YXJkUG9vbEZyYWN0aW9uUHJldmlvdXMCAAAAHl9wcmV2aW91c19wb29sX2ZyYWN0aW9uX3Jld2FyZAAAAAAda2V5VG90YWxSZXdhcmRQZXJCbG9ja0N1cnJlbnQCAAAAHnRvdGFsX3Jld2FyZF9wZXJfYmxvY2tfY3VycmVudAAAAAAea2V5VG90YWxSZXdhcmRQZXJCbG9ja1ByZXZpb3VzAgAAAB90b3RhbF9yZXdhcmRfcGVyX2Jsb2NrX3ByZXZpb3VzAAAAABVrZXlSZXdhcmRVcGRhdGVIZWlnaHQCAAAAFHJld2FyZF91cGRhdGVfaGVpZ2h0AAAAABVrZXlOb1ZvdGluZ0Zvck5ld1Bvb2wCAAAACF92b3RlX25vAAAAABZrZXlZZXNWb3RpbmdGb3JOZXdQb29sAgAAAAlfdm90ZV95ZXMAAAAAG2tleUFtb3VudE9mVm90aW5nRm9yTmV3UG9vbAIAAAARbWF4X2Ftb3VudF92b3RpbmcAAAAAG2tleVN0YXR1c09mVm90aW5nRm9yTmV3UG9vbAIAAAAHX3N0YXR1cwAAAAAfa2V5SGVpZ2h0T2ZQb29sVm90aW5nRm9yTmV3UG9vbAIAAAAOX2ZpbmlzaF9oZWlnaHQAAAAAD2FjdGl2ZVZvdGVGaXJzdAIAAAAUdm90aW5nX2FjdGl2ZV9jZWxsXzEAAAAAEGFjdGl2ZVZvdGVTZWNvbmQCAAAAFHZvdGluZ19hY3RpdmVfY2VsbF8yAAAAAA9hY3RpdmVWb3RlVGhpcmQCAAAAFHZvdGluZ19hY3RpdmVfY2VsbF8zAAAAAAhpc0FjdGl2ZQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBsAAAACBQAAAAR0aGlzBQAAAAlrZXlBY3RpdmUGAAAAABJmYXJtaW5nU1dPUEFkZHJlc3MJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVc4DeZLRuf+UBcj/qBUTcgH5R4tWRCTmkoAAAAAEnZvdGluZ0xpdGVDb250cmFjdAkBAAAAB0FkZHJlc3MAAAABAQAAABoBV/g/+6xPyWLNjZSZW67sqUsI3PCMpKwiuwAAAAAQdm90aW5nRm9yTmV3UG9vbAkBAAAAB0FkZHJlc3MAAAABAQAAABoBV6y+6ZiMjPxkx6QfYg3Npzh7t63US4EQYQAAAAAJa2V5U1dPUGlkAgAAAAdTV09QX2lkAAAAAARTV09QCQACWQAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAAEmZhcm1pbmdTV09QQWRkcmVzcwUAAAAJa2V5U1dPUGlkAAAAAApzY2FsZVZhbHVlAAAAAAAF9eEAAAAAAA50b3RhbFZvdGVTaGFyZQAAAAACVAvkAAAAAAAMa1N0YXJ0SGVpZ2h0AgAAAAxzdGFydF9oZWlnaHQAAAAAC2tCYXNlUGVyaW9kAgAAAAtiYXNlX3BlcmlvZAAAAAANa1BlcmlvZExlbmd0aAIAAAANcGVyaW9kX2xlbmd0aAAAAAAPa1VzZXJUb3RhbFN0cnVjAgAAABFfdXNlcl90b3RhbF9zdHJ1YwAAAAAKYmFzZVBlcmlvZAkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEGgAAAAIFAAAAEnZvdGluZ0xpdGVDb250cmFjdAUAAAALa0Jhc2VQZXJpb2QCAAAAJEVtcHR5IGtCYXNlUGVyaW9kIGF0IHZvdGluZyBjb250cmFjdAAAAAALc3RhcnRIZWlnaHQJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAABJ2b3RpbmdMaXRlQ29udHJhY3QFAAAADGtTdGFydEhlaWdodAIAAAAlRW1wdHkga1N0YXJ0SGVpZ2h0IGF0IHZvdGluZyBjb250cmFjdAAAAAAMcGVyaW9kTGVuZ3RoCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAASdm90aW5nTGl0ZUNvbnRyYWN0BQAAAA1rUGVyaW9kTGVuZ3RoAgAAACZFbXB0eSBrUGVyaW9kTGVuZ3RoIGF0IHZvdGluZyBjb250cmFjdAAAAAAPZmlyc3RBY3RpdmVWb3RlCQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAAEHZvdGluZ0Zvck5ld1Bvb2wFAAAAD2FjdGl2ZVZvdGVGaXJzdAIAAAAAAAAAABBzZWNvbmRBY3RpdmVWb3RlCQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAAEHZvdGluZ0Zvck5ld1Bvb2wFAAAAEGFjdGl2ZVZvdGVTZWNvbmQCAAAAAAAAAAAPdGhpcmRBY3RpdmVWb3RlCQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAAEHZvdGluZ0Zvck5ld1Bvb2wFAAAAD2FjdGl2ZVZvdGVUaGlyZAIAAAAAAAAAABBjdXJyVm90aW5nUGVyaW9kCQAAZAAAAAIFAAAACmJhc2VQZXJpb2QJAABpAAAAAgkAAGUAAAACBQAAAAZoZWlnaHQFAAAAC3N0YXJ0SGVpZ2h0BQAAAAxwZXJpb2RMZW5ndGgBAAAAB3N1c3BlbmQAAAABAAAABWNhdXNlCQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACBQAAAAlrZXlBY3RpdmUHCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAACGtleUNhdXNlBQAAAAVjYXVzZQUAAAADbmlsAQAAABJ0aHJvd05vdEVub3VnaFNXT1AAAAAACQAAAgAAAAECAAAARk5vdCBlbm91Z2ggU1dPUDogdXNlclNXT1BMb2NrZWQgLSB1c2VyVG90YWxWb3RlQW1vdW50IDwgdm90ZVNXT1BBbW91bnQBAAAAE2dldExhc3RJbnRlcmVzdEluZm8AAAAABAAAAAxsYXN0SW50ZXJlc3QJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwUAAAAPa2V5TGFzdEludGVyZXN0AAAAAAAAAAAABQAAAAxsYXN0SW50ZXJlc3QBAAAAEWdldFVzZXJTV09QTG9ja2VkAAAAAQAAAAR1c2VyCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkABCUAAAABBQAAAAR1c2VyBQAAABFrZXlVc2VyU1dPUExvY2tlZAAAAAAAAAAAAAEAAAAYZ2V0VXNlclNXT1BDbGFpbWVkQW1vdW50AAAAAQAAAAR1c2VyCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkABCUAAAABBQAAAAR1c2VyBQAAABhrZXlVc2VyU1dPUENsYWltZWRBbW91bnQAAAAAAAAAAAABAAAAFmdldFVzZXJUb3RhbFZvdGVBbW91bnQAAAABAAAABHVzZXIJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAASdm90aW5nTGl0ZUNvbnRyYWN0CQABLAAAAAIJAAQlAAAAAQUAAAAEdXNlcgUAAAASa1VzZXJUb3RhbFZvdGVTV09QAAAAAAAAAAAAAQAAABNnZXRVc2VySW50ZXJlc3RJbmZvAAAAAgAAAAR1c2VyAAAADGxhc3RJbnRlcmVzdAQAAAAOdXNlclNXT1BBbW91bnQJAQAAABFnZXRVc2VyU1dPUExvY2tlZAAAAAEFAAAABHVzZXIEAAAAEHVzZXJMYXN0SW50ZXJlc3QJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQAEJQAAAAEFAAAABHVzZXIFAAAAE2tleVVzZXJMYXN0SW50ZXJlc3QEAAAAFXVzZXJMYXN0SW50ZXJlc3RWYWx1ZQQAAAAHJG1hdGNoMAUAAAAQdXNlckxhc3RJbnRlcmVzdAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAABB1c2VyTGFzdEludGVyZXN0BQAAAAckbWF0Y2gwBQAAABB1c2VyTGFzdEludGVyZXN0BQAAAAxsYXN0SW50ZXJlc3QJAAUUAAAAAgUAAAAVdXNlckxhc3RJbnRlcmVzdFZhbHVlBQAAAA51c2VyU1dPUEFtb3VudAEAAAAgZ2V0VXNlclRvdGFsVm90ZUFtb3VudEZvck9uZVBvb2wAAAACAAAABHBvb2wAAAAEdXNlcgQAAAAGdm90aW5nCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAAEHZvdGluZ0Zvck5ld1Bvb2wFAAAABHBvb2wA//////////8EAAAADmhlaWdodE9mVm90aW5nCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAAEHZvdGluZ0Zvck5ld1Bvb2wJAAEsAAAAAgkAAaQAAAAB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NTcyNjYyNzcAAAACXzIEAAAAEXVzZXJVbnZvdGVkUGVyaW9kCAUAAAALJHQwNTcyNjYyNzcAAAACXzMEAAAAEXVzZXJVbnZvdGVkQWN0dWFsAwkAAAAAAAACBQAAABF1c2VyVW52b3RlZFBlcmlvZAUAAAAQY3VyclZvdGluZ1BlcmlvZAUAAAALdXNlclVudm90ZWQAAAAAAAAAAAAJAAUUAAAAAgUAAAARdXNlclRvdGFsVm90ZVNXT1AFAAAAEXVzZXJVbnZvdGVkQWN0dWFsAQAAABdnZXRVc2VyVm90ZU9wdGlvbkFtb3VudAAAAAEAAAAEdXNlcgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAQlAAAAAQUAAAAEdXNlcgUAAAAXa2V5VXNlclZvdGVPcHRpb25BbW91bnQAAAAAAAAAAAABAAAAFGdldFZvdGluZ1N0YXJ0SGVpZ2h0AAAAAQAAAAh2b3RlTmFtZQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIFAAAACHZvdGVOYW1lBQAAABRrZXlWb3RpbmdTdGFydEhlaWdodAAAAAAAAAAAAAEAAAATZ2V0Vm90ZU9wdGlvbkFtb3VudAAAAAMAAAAEdXNlcgAAAAh2b3RlTmFtZQAAAAZvcHRpb24EAAAAFHVzZXJWb3RlT3B0aW9uQW1vdW50CQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAACHZvdGVOYW1lBQAAAAZvcHRpb24JAAQlAAAAAQUAAAAEdXNlcgUAAAAXa2V5VXNlclZvdGVPcHRpb25BbW91bnQEAAAABHV2b2EEAAAAByRtYXRjaDAFAAAAFHVzZXJWb3RlT3B0aW9uQW1vdW50AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAABHV2b2EFAAAAByRtYXRjaDAFAAAABHV2b2EDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQEAAAABHV2b2EFAAAAByRtYXRjaDAAAAAAAAAAAAAJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgUAAAAEdXZvYQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAABRObyBkYXRhIG9uIHRoZSBrZXk6IAUAAAAIdm90ZU5hbWUFAAAABm9wdGlvbgkABCUAAAABBQAAAAR1c2VyBQAAABdrZXlVc2VyVm90ZU9wdGlvbkFtb3VudAEAAAAPZ2V0Vm90ZUR1cmF0aW9uAAAAAQAAAAh2b3RlTmFtZQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAIdm90ZU5hbWUFAAAAD2tleVZvdGVEdXJhdGlvbgkAASwAAAACCQABLAAAAAICAAAAFE5vIGRhdGEgb24gdGhlIGtleTogBQAAAAh2b3RlTmFtZQUAAAAPa2V5Vm90ZUR1cmF0aW9uAQAAABhnZXRUb3RhbFZvdGVPcHRpb25BbW91bnQAAAACAAAACHZvdGVOYW1lAAAABm9wdGlvbgQAAAAVdG90YWxWb3RlT3B0aW9uQW1vdW50CQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACBQAAAAh2b3RlTmFtZQUAAAAGb3B0aW9uBQAAABhrZXlUb3RhbFZvdGVPcHRpb25BbW91bnQEAAAABHR2b2EEAAAAByRtYXRjaDAFAAAAFXRvdGFsVm90ZU9wdGlvbkFtb3VudAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAR0dm9hBQAAAAckbWF0Y2gwBQAAAAR0dm9hAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0BAAAAAR0dm9hBQAAAAckbWF0Y2gwAAAAAAAAAAAACQAAAgAAAAECAAAAC01hdGNoIGVycm9yBQAAAAR0dm9hAQAAABRnZXRVc2VyR2V0QmFja0Ftb3VudAAAAAQAAAAIdm90ZU5hbWUAAAAGb3B0aW9uAAAABHVzZXIAAAARZ2V0QmFja1NXT1BIZWlnaHQEAAAAA2tleQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAIdm90ZU5hbWUCAAAAAV8FAAAABm9wdGlvbgIAAAABXwkABCUAAAABBQAAAAR1c2VyAgAAAAFfCQABpAAAAAEFAAAAEWdldEJhY2tTV09QSGVpZ2h0CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwUAAAADa2V5CQABLAAAAAICAAAAFE5vIGRhdGEgb24gdGhlIGtleTogBQAAAANrZXkBAAAACWNsYWltQ2FsYwAAAAEAAAAGY2FsbGVyBAAAAAxsYXN0SW50ZXJlc3QJAQAAABNnZXRMYXN0SW50ZXJlc3RJbmZvAAAAAAQAAAALJHQwODA2OTgxNDkJAQAAABNnZXRVc2VySW50ZXJlc3RJbmZvAAAAAgUAAAAGY2FsbGVyBQAAAAxsYXN0SW50ZXJlc3QEAAAAEHVzZXJMYXN0SW50ZXJlc3QIBQAAAAskdDA4MDY5ODE0OQAAAAJfMQQAAAAOdXNlclNXT1BMb2NrZWQIBQAAAAskdDA4MDY5ODE0OQAAAAJfMgQAAAALY2xhaW1BbW91bnQJAABrAAAAAwUAAAAOdXNlclNXT1BMb2NrZWQJAABlAAAAAgUAAAAMbGFzdEludGVyZXN0BQAAABB1c2VyTGFzdEludGVyZXN0BQAAAApzY2FsZVZhbHVlBAAAAA91c2VyTmV3SW50ZXJlc3QFAAAADGxhc3RJbnRlcmVzdAkABRQAAAACBQAAAA91c2VyTmV3SW50ZXJlc3QFAAAAC2NsYWltQW1vdW50AAAACAAAAAFpAQAAAAdhaXJEcm9wAAAAAAMJAQAAAAEhAAAAAQUAAAAIaXNBY3RpdmUJAAACAAAAAQIAAAAfREFwcCBpcyBpbmFjdGl2ZSBhdCB0aGlzIG1vbWVudAQAAAALJHQwODQxNDg0ODkJAAUUAAAAAggJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAGYW1vdW50CAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAdhc3NldElkBAAAAAlwbXRBbW91bnQIBQAAAAskdDA4NDE0ODQ4OQAAAAJfMQQAAAAKcG10QXNzZXRJZAgFAAAACyR0MDg0MTQ4NDg5AAAAAl8yAwkBAAAAAiE9AAAAAgUAAAAKcG10QXNzZXRJZAUAAAAEU1dPUAkAAAIAAAABAgAAABRJbmNvcnJlY3QgcG10QXNzZXRJZAQAAAAPdG90YWxTV09QTG9ja2VkCQEAAAASZ2V0VG90YWxTV09QTG9ja2VkAAAAAAQAAAAMbGFzdEludGVyZXN0CQEAAAATZ2V0TGFzdEludGVyZXN0SW5mbwAAAAAEAAAAC2ludGVyZXN0TmV3CQAAZAAAAAIFAAAADGxhc3RJbnRlcmVzdAkAAGsAAAADBQAAAAlwbXRBbW91bnQFAAAACnNjYWxlVmFsdWUFAAAAD3RvdGFsU1dPUExvY2tlZAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAPa2V5TGFzdEludGVyZXN0BQAAAAtpbnRlcmVzdE5ldwUAAAADbmlsAAAAAWkBAAAACGxvY2tTV09QAAAAAAMJAQAAAAEhAAAAAQUAAAAIaXNBY3RpdmUJAAACAAAAAQIAAAAfREFwcCBpcyBpbmFjdGl2ZSBhdCB0aGlzIG1vbWVudAQAAAALJHQwODkyNzkwMDIJAAUUAAAAAggJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAGYW1vdW50CAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAdhc3NldElkBAAAAAlwbXRBbW91bnQIBQAAAAskdDA4OTI3OTAwMgAAAAJfMQQAAAAKcG10QXNzZXRJZAgFAAAACyR0MDg5Mjc5MDAyAAAAAl8yAwkBAAAAAiE9AAAAAgUAAAAKcG10QXNzZXRJZAUAAAAEU1dPUAkAAAIAAAABAgAAABRJbmNvcnJlY3QgcG10QXNzZXRJZAQAAAAMbGFzdEludGVyZXN0CQEAAAATZ2V0TGFzdEludGVyZXN0SW5mbwAAAAAEAAAACyR0MDkxMTg5MjAwCQEAAAATZ2V0VXNlckludGVyZXN0SW5mbwAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAMbGFzdEludGVyZXN0BAAAABB1c2VyTGFzdEludGVyZXN0CAUAAAALJHQwOTExODkyMDAAAAACXzEEAAAADnVzZXJTV09QTG9ja2VkCAUAAAALJHQwOTExODkyMDAAAAACXzIEAAAAC2NsYWltQW1vdW50CQAAawAAAAMFAAAADnVzZXJTV09QTG9ja2VkCQAAZQAAAAIFAAAADGxhc3RJbnRlcmVzdAUAAAAQdXNlckxhc3RJbnRlcmVzdAUAAAAKc2NhbGVWYWx1ZQQAAAARdXNlclNXT1BMb2NrZWROZXcJAABkAAAAAgkAAGQAAAACBQAAAA51c2VyU1dPUExvY2tlZAUAAAAJcG10QW1vdW50BQAAAAtjbGFpbUFtb3VudAQAAAAPdXNlck5ld0ludGVyZXN0BQAAAAxsYXN0SW50ZXJlc3QEAAAAD3RvdGFsU1dPUExvY2tlZAkBAAAAEmdldFRvdGFsU1dPUExvY2tlZAAAAAAEAAAAEnRvdGFsU1dPUExvY2tlZE5ldwkAAGQAAAACCQAAZAAAAAIFAAAAD3RvdGFsU1dPUExvY2tlZAUAAAAJcG10QW1vdW50BQAAAAtjbGFpbUFtb3VudAQAAAARdXNlckNsYWltZWRBbW91bnQJAQAAABhnZXRVc2VyU1dPUENsYWltZWRBbW91bnQAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAFHVzZXJDbGFpbWVkQW1vdW50TmV3CQAAZAAAAAIFAAAAEXVzZXJDbGFpbWVkQW1vdW50BQAAAAtjbGFpbUFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAATa2V5VXNlckxhc3RJbnRlcmVzdAUAAAAPdXNlck5ld0ludGVyZXN0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABFrZXlVc2VyU1dPUExvY2tlZAUAAAARdXNlclNXT1BMb2NrZWROZXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEmtleVRvdGFsU1dPUExvY2tlZAUAAAASdG90YWxTV09QTG9ja2VkTmV3CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABhrZXlVc2VyU1dPUENsYWltZWRBbW91bnQFAAAAFHVzZXJDbGFpbWVkQW1vdW50TmV3CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABxrZXlVc2VyU1dPUExhc3RDbGFpbWVkQW1vdW50BQAAAAtjbGFpbUFtb3VudAUAAAADbmlsAAAAAWkBAAAADHdpdGhkcmF3U1dPUAAAAAEAAAAOd2l0aGRyYXdBbW91bnQDCQEAAAABIQAAAAEFAAAACGlzQWN0aXZlCQAAAgAAAAECAAAAH0RBcHAgaXMgaW5hY3RpdmUgYXQgdGhpcyBtb21lbnQDCQAAZwAAAAIAAAAAAAAAAAAFAAAADndpdGhkcmF3QW1vdW50CQAAAgAAAAECAAAAE3dpdGhkcmF3QW1vdW50IDw9IDAEAAAAD3RvdGFsU1dPUExvY2tlZAkBAAAAEmdldFRvdGFsU1dPUExvY2tlZAAAAAAEAAAADnVzZXJTV09QTG9ja2VkCQEAAAARZ2V0VXNlclNXT1BMb2NrZWQAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAADSR0MDEwMzUwMTA0MDUJAQAAAAljbGFpbUNhbGMAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAD3VzZXJOZXdJbnRlcmVzdAgFAAAADSR0MDEwMzUwMTA0MDUAAAACXzEEAAAAC2NsYWltQW1vdW50CAUAAAANJHQwMTAzNTAxMDQwNQAAAAJfMgQAAAANJHQwMTA0MTAxMDQ3NQkBAAAAD2dldFVzZXJWb3RlSW5mbwAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAAOdXNlclZvdGVBbW91bnQIBQAAAA0kdDAxMDQxMDEwNDc1AAAAAl8xBAAAABB1c2VyVW52b3RlQW1vdW50CAUAAAANJHQwMTA0MTAxMDQ3NQAAAAJfMgQAAAAYdXNlclZvdGVBbW91bnRGb3JOZXdQb29sCQEAAAAgZ2V0VXNlclRvdGFsVm90ZUZvck5ld1Bvb2xBbW91bnQAAAABCAUAAAABaQAAAAZjYWxsZXIDAwMJAABmAAAAAgAAAAAAAAAAAAUAAAAQdXNlclVudm90ZUFtb3VudAYJAABmAAAAAgAAAAAAAAAAAAUAAAAOdXNlclZvdGVBbW91bnQGCQAAZgAAAAIAAAAAAAAAAAAFAAAAGHVzZXJWb3RlQW1vdW50Rm9yTmV3UG9vbAkAAAIAAAABAgAAAEp1c2VyVW52b3RlQW1vdW50IDwgMCB8fCB1c2VyVm90ZUFtb3VudCA8IDAgfHwgdXNlclZvdGVBbW91bnRGb3JOZXdQb29sIDwgMAQAAAASYXZhaWxhYmxlVG9VbnN0YWtlCQAAZQAAAAIFAAAADnVzZXJTV09QTG9ja2VkCQABlgAAAAEJAARMAAAAAgUAAAAYdXNlclZvdGVBbW91bnRGb3JOZXdQb29sCQAETAAAAAIJAABkAAAAAgUAAAAOdXNlclZvdGVBbW91bnQFAAAAEHVzZXJVbnZvdGVBbW91bnQFAAAAA25pbAMJAABmAAAAAgUAAAAOd2l0aGRyYXdBbW91bnQFAAAAEmF2YWlsYWJsZVRvVW5zdGFrZQkAAAIAAAABAgAAACN3aXRoZHJhd0Ftb3VudCA+IGF2YWlsYWJsZVRvVW5zdGFrZQQAAAASdG90YWxTV09QTG9ja2VkTmV3CQAAZQAAAAIJAABkAAAAAgUAAAAPdG90YWxTV09QTG9ja2VkBQAAAAtjbGFpbUFtb3VudAUAAAAOd2l0aGRyYXdBbW91bnQEAAAAEXVzZXJTV09QYW1vdW50TmV3CQAAZQAAAAIJAABkAAAAAgUAAAAOdXNlclNXT1BMb2NrZWQFAAAAC2NsYWltQW1vdW50BQAAAA53aXRoZHJhd0Ftb3VudAQAAAARdXNlckNsYWltZWRBbW91bnQJAQAAABhnZXRVc2VyU1dPUENsYWltZWRBbW91bnQAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAFHVzZXJDbGFpbWVkQW1vdW50TmV3CQAAZAAAAAIFAAAAEXVzZXJDbGFpbWVkQW1vdW50BQAAAAtjbGFpbUFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAATa2V5VXNlckxhc3RJbnRlcmVzdAUAAAAPdXNlck5ld0ludGVyZXN0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABFrZXlVc2VyU1dPUExvY2tlZAUAAAARdXNlclNXT1BhbW91bnROZXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEmtleVRvdGFsU1dPUExvY2tlZAUAAAASdG90YWxTV09QTG9ja2VkTmV3CQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAOd2l0aGRyYXdBbW91bnQFAAAABFNXT1AJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAGGtleVVzZXJTV09QQ2xhaW1lZEFtb3VudAUAAAAUdXNlckNsYWltZWRBbW91bnROZXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAHGtleVVzZXJTV09QTGFzdENsYWltZWRBbW91bnQFAAAAC2NsYWltQW1vdW50BQAAAANuaWwAAAABaQEAAAAUY2xhaW1BbmRXaXRoZHJhd1NXT1AAAAAAAwkBAAAAASEAAAABBQAAAAhpc0FjdGl2ZQkAAAIAAAABAgAAAB9EQXBwIGlzIGluYWN0aXZlIGF0IHRoaXMgbW9tZW50BAAAAAxsYXN0SW50ZXJlc3QJAQAAABNnZXRMYXN0SW50ZXJlc3RJbmZvAAAAAAQAAAANJHQwMTE4NTAxMTkwNQkBAAAACWNsYWltQ2FsYwAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAAPdXNlck5ld0ludGVyZXN0CAUAAAANJHQwMTE4NTAxMTkwNQAAAAJfMQQAAAALY2xhaW1BbW91bnQIBQAAAA0kdDAxMTg1MDExOTA1AAAAAl8yBAAAABF1c2VyQ2xhaW1lZEFtb3VudAkBAAAAGGdldFVzZXJTV09QQ2xhaW1lZEFtb3VudAAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAAUdXNlckNsYWltZWRBbW91bnROZXcJAABkAAAAAgUAAAARdXNlckNsYWltZWRBbW91bnQFAAAAC2NsYWltQW1vdW50AwkAAAAAAAACBQAAAAtjbGFpbUFtb3VudAAAAAAAAAAAAAkAAAIAAAABAgAAABlZb3UgaGF2ZSAwIGF2YWlsYWJsZSBTV09QCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABNrZXlVc2VyTGFzdEludGVyZXN0BQAAAA91c2VyTmV3SW50ZXJlc3QJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAGGtleVVzZXJTV09QQ2xhaW1lZEFtb3VudAUAAAAUdXNlckNsYWltZWRBbW91bnROZXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAHGtleVVzZXJTV09QTGFzdENsYWltZWRBbW91bnQFAAAAC2NsYWltQW1vdW50CQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAALY2xhaW1BbW91bnQFAAAABFNXT1AFAAAAA25pbAAAAAFpAQAAABFjbGFpbUFuZFN0YWtlU1dPUAAAAAADCQEAAAABIQAAAAEFAAAACGlzQWN0aXZlCQAAAgAAAAECAAAAH0RBcHAgaXMgaW5hY3RpdmUgYXQgdGhpcyBtb21lbnQEAAAAD3RvdGFsU1dPUExvY2tlZAkBAAAAEmdldFRvdGFsU1dPUExvY2tlZAAAAAAEAAAADnVzZXJTV09QTG9ja2VkCQEAAAARZ2V0VXNlclNXT1BMb2NrZWQAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAADGxhc3RJbnRlcmVzdAkBAAAAE2dldExhc3RJbnRlcmVzdEluZm8AAAAABAAAAA0kdDAxMjY4NDEyNzM5CQEAAAAJY2xhaW1DYWxjAAAAAQgFAAAAAWkAAAAGY2FsbGVyBAAAAA91c2VyTmV3SW50ZXJlc3QIBQAAAA0kdDAxMjY4NDEyNzM5AAAAAl8xBAAAAAtjbGFpbUFtb3VudAgFAAAADSR0MDEyNjg0MTI3MzkAAAACXzIEAAAAEXVzZXJTV09QTG9ja2VkTmV3CQAAZAAAAAIFAAAADnVzZXJTV09QTG9ja2VkBQAAAAtjbGFpbUFtb3VudAQAAAASdG90YWxTV09QTG9ja2VkTmV3CQAAZAAAAAIFAAAAD3RvdGFsU1dPUExvY2tlZAUAAAALY2xhaW1BbW91bnQEAAAAEXVzZXJDbGFpbWVkQW1vdW50CQEAAAAYZ2V0VXNlclNXT1BDbGFpbWVkQW1vdW50AAAAAQgFAAAAAWkAAAAGY2FsbGVyBAAAABR1c2VyQ2xhaW1lZEFtb3VudE5ldwkAAGQAAAACBQAAABF1c2VyQ2xhaW1lZEFtb3VudAUAAAALY2xhaW1BbW91bnQDCQAAAAAAAAIFAAAAC2NsYWltQW1vdW50AAAAAAAAAAAACQAAAgAAAAECAAAAGVlvdSBoYXZlIDAgYXZhaWxhYmxlIFNXT1AJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAE2tleVVzZXJMYXN0SW50ZXJlc3QFAAAAD3VzZXJOZXdJbnRlcmVzdAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAASa2V5VG90YWxTV09QTG9ja2VkBQAAABJ0b3RhbFNXT1BMb2NrZWROZXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAEWtleVVzZXJTV09QTG9ja2VkBQAAABF1c2VyU1dPUExvY2tlZE5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAAYa2V5VXNlclNXT1BDbGFpbWVkQW1vdW50BQAAABR1c2VyQ2xhaW1lZEFtb3VudE5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAAca2V5VXNlclNXT1BMYXN0Q2xhaW1lZEFtb3VudAUAAAALY2xhaW1BbW91bnQFAAAAA25pbAAAAAFpAQAAAA11cGRhdGVXZWlnaHRzAAAABQAAAA1wcmV2aW91c1Bvb2xzAAAAD3ByZXZpb3VzUmV3YXJkcwAAAAxjdXJyZW50UG9vbHMAAAAOY3VycmVudFJld2FyZHMAAAAScmV3YXJkVXBkYXRlSGVpZ2h0AwkBAAAAASEAAAABBQAAAAhpc0FjdGl2ZQkAAAIAAAABAgAAAB9EQXBwIGlzIGluYWN0aXZlIGF0IHRoaXMgbW9tZW50AwkBAAAAASEAAAABCQEAAAAPY29udGFpbnNFbGVtZW50AAAAAgkABEwAAAACBQAAAAxhZG1pblB1YktleTEJAARMAAAAAgUAAAAMYWRtaW5QdWJLZXkyCQAETAAAAAIFAAAADGFkbWluUHViS2V5MwkABEwAAAACBQAAABRhZG1pblB1YktleVN0YXJ0U3RvcAkABEwAAAACBQAAABFhZG1pblB1YktleVdhbGxldAUAAAADbmlsCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkJAAACAAAAAQIAAAAhT25seSBhZG1pbiBjYW4gY2FsbCB0aGlzIGZ1bmN0aW9uCgEAAAADc3VtAAAAAgAAAAFhAAAAAWIJAABkAAAAAgUAAAABYQUAAAABYgoBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACAAAAC2FjY3VtdWxhdGVkAAAABHBvb2wEAAAACXBvb2xJbmRleAkBAAAABXZhbHVlAAAAAQkABE8AAAACBQAAAA1wcmV2aW91c1Bvb2xzBQAAAARwb29sBAAAAApwb29sUmV3YXJkCQABkQAAAAIFAAAAD3ByZXZpb3VzUmV3YXJkcwUAAAAJcG9vbEluZGV4CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAABHBvb2wFAAAAHWtleVJld2FyZFBvb2xGcmFjdGlvblByZXZpb3VzBQAAAApwb29sUmV3YXJkBQAAAAthY2N1bXVsYXRlZAoBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIAAAALYWNjdW11bGF0ZWQAAAAEcG9vbAQAAAAJcG9vbEluZGV4CQEAAAAFdmFsdWUAAAABCQAETwAAAAIFAAAADGN1cnJlbnRQb29scwUAAAAEcG9vbAQAAAAKcG9vbFJld2FyZAkAAZEAAAACBQAAAA5jdXJyZW50UmV3YXJkcwUAAAAJcG9vbEluZGV4CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAABHBvb2wFAAAAHGtleVJld2FyZFBvb2xGcmFjdGlvbkN1cnJlbnQFAAAACnBvb2xSZXdhcmQFAAAAC2FjY3VtdWxhdGVkBAAAABFzdW1SZXdhcmRQcmV2aW91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YWNjMTcxNDUyMDE0NTUzBAAAABAkYWNjMTgxNDUyMDE0NTUzCQEAAAADc3VtAAAAAgUAAAAQJGFjYzE3MTQ1MjAxNDU1MwkAAZEAAAACBQAAAA8kbGlzdDE0NTIwMTQ1NTMAAAAAAAAAABEDCQAAAAAAAAIFAAAADyRzaXplMTQ1MjAxNDU1MwAAAAAAAAAAEgUAAAAQJGFjYzE4MTQ1MjAxNDU1MwQAAAAQJGFjYzE5MTQ1MjAxNDU1MwkBAAAAA3N1bQAAAAIFAAAAECRhY2MxODE0NTIwMTQ1NTMJAAGRAAAAAgUAAAAPJGxpc3QxNDUyMDE0NTUzAAAAAAAAAAASAwkAAAAAAAACBQAAAA8kc2l6ZTE0NTIwMTQ1NTMAAAAAAAAAABMFAAAAECRhY2MxOTE0NTIwMTQ1NTMEAAAAECRhY2MyMDE0NTIwMTQ1NTMJAQAAAANzdW0AAAACBQAAABAkYWNjMTkxNDUyMDE0NTUzCQABkQAAAAIFAAAADyRsaXN0MTQ1MjAxNDU1MwAAAAAAAAAAEwMJAAAAAAAAAgUAAAAPJHNpemUxNDUyMDE0NTUzAAAAAAAAAAAUBQAAABAkYWNjMjAxNDUyMDE0NTUzBAAAABAkYWNjMjExNDUyMDE0NTUzCQEAAAADc3VtAAAAAgUAAAAQJGFjYzIwMTQ1MjAxNDU1MwkAAZEAAAACBQAAAA8kbGlzdDE0NTIwMTQ1NTMAAAAAAAAAABQDCQAAAAAAAAIFAAAADyRzaXplMTQ1MjAxNDU1MwAAAAAAAAAAFQUAAAAQJGFjYzIxMTQ1MjAxNDU1MwQAAAAQJGFjYzIyMTQ1MjAxNDU1MwkBAAAAA3N1bQAAAAIFAAAAECRhY2MyMTE0NTIwMTQ1NTMJAAGRAAAAAgUAAAAPJGxpc3QxNDUyMDE0NTUzAAAAAAAAAAAVCQAAAgAAAAECAAAAE0xpc3Qgc2l6ZSBleGNlZWQgMjEEAAAAEHN1bVJld2FyZEN1cnJlbnQEAAAADyRsaXN0MTQ1ODIxNDYxNAUAAAAOY3VycmVudFJld2FyZHMEAAAADyRzaXplMTQ1ODIxNDYxNAkAAZAAAAABBQAAAA8kbGlzdDE0NTgyMTQ2MTQEAAAADyRhY2MwMTQ1ODIxNDYxNAAAAAAAAAAAAAMJAAAAAAAAAgUAAAAPJHNpemUx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AAAAAAAAEgUAAAAQJGFjYzE4MTQ1ODIxNDYxNAQAAAAQJGFjYzE5MTQ1ODIxNDYxNAkBAAAAA3N1bQAAAAIFAAAAECRhY2MxODE0NTgyMTQ2MTQJAAGRAAAAAgUAAAAPJGxpc3QxNDU4MjE0NjE0AAAAAAAAAAASAwkAAAAAAAACBQAAAA8kc2l6ZTE0NTgyMTQ2MTQAAAAAAAAAABMFAAAAECRhY2MxOTE0NTgyMTQ2MTQEAAAAECRhY2MyMDE0NTgyMTQ2MTQJAQAAAANzdW0AAAACBQAAABAkYWNjMTkxNDU4MjE0NjE0CQABkQAAAAIFAAAADyRsaXN0MTQ1ODIxNDYxNAAAAAAAAAAAEwMJAAAAAAAAAgUAAAAPJHNpemUxNDU4MjE0NjE0AAAAAAAAAAAUBQAAABAkYWNjMjAxNDU4MjE0NjE0BAAAABAkYWNjMjExNDU4MjE0NjE0CQEAAAADc3VtAAAAAgUAAAAQJGFjYzIwMTQ1ODIxNDYxNAkAAZEAAAACBQAAAA8kbGlzdDE0NTgyMTQ2MTQAAAAAAAAAABQDCQAAAAAAAAIFAAAADyRzaXplMTQ1ODIxNDYxNAAAAAAAAAAAFQUAAAAQJGFjYzIxMTQ1ODIxNDYxNAQAAAAQJGFjYzIyMTQ1ODIxNDYxNAkBAAAAA3N1bQAAAAIFAAAAECRhY2MyMTE0NTgyMTQ2MTQJAAGRAAAAAgUAAAAPJGxpc3QxNDU4MjE0NjE0AAAAAAAAAAAVCQAAAgAAAAECAAAAE0xpc3Qgc2l6ZSBleGNlZWQgMjEDCQAAZgAAAAIFAAAABmhlaWdodAUAAAAScmV3YXJkVXBkYXRlSGVpZ2h0CQAAAgAAAAECAAAAG3Jld2FyZFVwZGF0ZUhlaWdodCA8IGhlaWdodAMDCQEAAAACIT0AAAACBQAAABFzdW1SZXdhcmRQcmV2aW91cwUAAAAOdG90YWxWb3RlU2hhcmUGCQEAAAACIT0AAAACBQAAABBzdW1SZXdhcmRDdXJyZW50BQAAAA50b3RhbFZvdGVTaGFyZQkAAAIAAAABAgAAAElzdW1SZXdhcmRQcmV2aW91cyAhPSB0b3RhbFZvdGVTaGFyZSBvciBzdW1SZXdhcmRDdXJyZW50ICE9IHRvdGFsVm90ZVNoYXJlBAAAABZwcmV2aW91c1Jld2FyZEVudHJ5TmV3BAAAAA8kbGlzdDE0OTIzMTQ5NzEFAAAADXByZXZpb3VzUG9vbHMEAAAADyRzaXplMTQ5MjMxNDk3MQkAAZAAAAABBQAAAA8kbGlzdDE0OTIzMTQ5NzEEAAAADyRhY2MwMTQ5MjMxNDk3MQUAAAADbmlsAwkAAAAAAAACBQAAAA8kc2l6ZTE0OTIzMTQ5NzEAAAAAAAAAAAAFAAAADyRhY2MwMTQ5MjMxNDk3MQQAAAAPJGFjYzExNDkyMzE0OTcxCQEAAAATUHJldmlvdXNSZXdhcmRFbnRyeQAAAAIFAAAADyRhY2MwMTQ5MjMxNDk3MQkAAZEAAAACBQAAAA8kbGlzdDE0OTIzMTQ5NzEAAAAAAAAAAAADCQAAAAAAAAIFAAAADyRzaXplMTQ5MjMxNDk3MQAAAAAAAAAAAQUAAAAPJGFjYzExNDkyMzE0OTcxBAAAAA8kYWNjMjE0OTIzMTQ5NzEJAQAAABNQcmV2aW91c1Jld2FyZEVudHJ5AAAAAgUAAAAPJGFjYzExNDkyMzE0OTcxCQABkQAAAAIFAAAADyRsaXN0MTQ5MjMxNDk3MQAAAAAAAAAAAQMJAAAAAAAAAgUAAAAPJHNpemUxNDkyMzE0OTcxAAAAAAAAAAACBQAAAA8kYWNjMjE0OTIzMTQ5NzEEAAAADyRhY2MzMTQ5MjMxNDk3MQkBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACBQAAAA8kYWNjMjE0OTIzMTQ5NzEJAAGRAAAAAgUAAAAPJGxpc3QxNDkyMzE0OTcxAAAAAAAAAAACAwkAAAAAAAACBQAAAA8kc2l6ZTE0OTIzMTQ5NzEAAAAAAAAAAAMFAAAADyRhY2MzMTQ5MjMxNDk3MQQAAAAPJGFjYzQxNDkyMzE0OTcxCQEAAAATUHJldmlvdXNSZXdhcmRFbnRyeQAAAAIFAAAADyRhY2MzMTQ5MjMxNDk3MQkAAZEAAAACBQAAAA8kbGlzdDE0OTIzMTQ5NzEAAAAAAAAAAAMDCQAAAAAAAAIFAAAADyRzaXplMTQ5MjMxNDk3MQAAAAAAAAAABAUAAAAPJGFjYzQxNDkyMzE0OTcxBAAAAA8kYWNjNTE0OTIzMTQ5NzEJAQAAABNQcmV2aW91c1Jld2FyZEVudHJ5AAAAAgUAAAAPJGFjYzQxNDkyMzE0OTcxCQABkQAAAAIFAAAADyRsaXN0MTQ5MjMxNDk3MQAAAAAAAAAABAMJAAAAAAAAAgUAAAAPJHNpemUxNDkyMzE0OTcxAAAAAAAAAAAFBQAAAA8kYWNjNTE0OTIzMTQ5NzEEAAAADyRhY2M2MTQ5MjMxNDk3MQkBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACBQAAAA8kYWNjNTE0OTIzMTQ5NzEJAAGRAAAAAgUAAAAPJGxpc3QxNDkyMzE0OTcxAAAAAAAAAAAFAwkAAAAAAAACBQAAAA8kc2l6ZTE0OTIzMTQ5NzEAAAAAAAAAAAYFAAAADyRhY2M2MTQ5MjMxNDk3MQQAAAAPJGFjYzcxNDkyMzE0OTcxCQEAAAATUHJldmlvdXNSZXdhcmRFbnRyeQAAAAIFAAAADyRhY2M2MTQ5MjMxNDk3MQkAAZEAAAACBQAAAA8kbGlzdDE0OTIzMTQ5NzEAAAAAAAAAAAYDCQAAAAAAAAIFAAAADyRzaXplMTQ5MjMxNDk3MQAAAAAAAAAABwUAAAAPJGFjYzcxNDkyMzE0OTcxBAAAAA8kYWNjODE0OTIzMTQ5NzEJAQAAABNQcmV2aW91c1Jld2FyZEVudHJ5AAAAAgUAAAAPJGFjYzcxNDkyMzE0OTcxCQABkQAAAAIFAAAADyRsaXN0MTQ5MjMxNDk3MQAAAAAAAAAABwMJAAAAAAAAAgUAAAAPJHNpemUxNDkyMzE0OTcxAAAAAAAAAAAIBQAAAA8kYWNjODE0OTIzMTQ5NzEEAAAADyRhY2M5MTQ5MjMxNDk3MQkBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACBQAAAA8kYWNjODE0OTIzMTQ5NzEJAAGRAAAAAgUAAAAPJGxpc3QxNDkyMzE0OTcxAAAAAAAAAAAIAwkAAAAAAAACBQAAAA8kc2l6ZTE0OTIzMTQ5NzEAAAAAAAAAAAkFAAAADyRhY2M5MTQ5MjMxNDk3MQQAAAAQJGFjYzEwMTQ5MjMxNDk3MQkBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACBQAAAA8kYWNjOTE0OTIzMTQ5NzEJAAGRAAAAAgUAAAAPJGxpc3QxNDkyMzE0OTcxAAAAAAAAAAAJAwkAAAAAAAACBQAAAA8kc2l6ZTE0OTIzMTQ5NzEAAAAAAAAAAAoFAAAAECRhY2MxMDE0OTIzMTQ5NzEEAAAAECRhY2MxMTE0OTIzMTQ5NzEJAQAAABNQcmV2aW91c1Jld2FyZEVudHJ5AAAAAgUAAAAQJGFjYzEwMTQ5MjMxNDk3MQkAAZEAAAACBQAAAA8kbGlzdDE0OTIzMTQ5NzEAAAAAAAAAAAoDCQAAAAAAAAIFAAAADyRzaXplMTQ5MjMxNDk3MQAAAAAAAAAACwUAAAAQJGFjYzExMTQ5MjMxNDk3MQQAAAAQJGFjYzEyMTQ5MjMxNDk3MQkBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACBQAAABAkYWNjMTExNDkyMzE0OTcxCQABkQAAAAIFAAAADyRsaXN0MTQ5MjMxNDk3MQAAAAAAAAAACwMJAAAAAAAAAgUAAAAPJHNpemUxNDkyMzE0OTcxAAAAAAAAAAAMBQAAABAkYWNjMTIxNDkyMzE0OTcxBAAAABAkYWNjMTMxNDkyMzE0OTcxCQEAAAATUHJldmlvdXNSZXdhcmRFbnRyeQAAAAIFAAAAECRhY2MxMjE0OTIzMTQ5NzEJAAGRAAAAAgUAAAAPJGxpc3QxNDkyMzE0OTcxAAAAAAAAAAAMAwkAAAAAAAACBQAAAA8kc2l6ZTE0OTIzMTQ5NzEAAAAAAAAAAA0FAAAAECRhY2MxMzE0OTIzMTQ5NzEEAAAAECRhY2MxNDE0OTIzMTQ5NzEJAQAAABNQcmV2aW91c1Jld2FyZEVudHJ5AAAAAgUAAAAQJGFjYzEzMTQ5MjMxNDk3MQkAAZEAAAACBQAAAA8kbGlzdDE0OTIzMTQ5NzEAAAAAAAAAAA0DCQAAAAAAAAIFAAAADyRzaXplMTQ5MjMxNDk3MQAAAAAAAAAADgUAAAAQJGFjYzE0MTQ5MjMxNDk3MQQAAAAQJGFjYzE1MTQ5MjMxNDk3MQkBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACBQAAABAkYWNjMTQxNDkyMzE0OTcxCQABkQAAAAIFAAAADyRsaXN0MTQ5MjMxNDk3MQAAAAAAAAAADgMJAAAAAAAAAgUAAAAPJHNpemUxNDkyMzE0OTcxAAAAAAAAAAAPBQAAABAkYWNjMTUxNDkyMzE0OTcxBAAAABAkYWNjMTYxNDkyMzE0OTcxCQEAAAATUHJldmlvdXNSZXdhcmRFbnRyeQAAAAIFAAAAECRhY2MxNTE0OTIzMTQ5NzEJAAGRAAAAAgUAAAAPJGxpc3QxNDkyMzE0OTcxAAAAAAAAAAAPAwkAAAAAAAACBQAAAA8kc2l6ZTE0OTIzMTQ5NzEAAAAAAAAAABAFAAAAECRhY2MxNjE0OTIzMTQ5NzEEAAAAECRhY2MxNzE0OTIzMTQ5NzEJAQAAABNQcmV2aW91c1Jld2FyZEVudHJ5AAAAAgUAAAAQJGFjYzE2MTQ5MjMxNDk3MQkAAZEAAAACBQAAAA8kbGlzdDE0OTIzMTQ5NzEAAAAAAAAAABADCQAAAAAAAAIFAAAADyRzaXplMTQ5MjMxNDk3MQAAAAAAAAAAEQUAAAAQJGFjYzE3MTQ5MjMxNDk3MQQAAAAQJGFjYzE4MTQ5MjMxNDk3MQkBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACBQAAABAkYWNjMTcxNDkyMzE0OTcxCQABkQAAAAIFAAAADyRsaXN0MTQ5MjMxNDk3MQAAAAAAAAAAEQMJAAAAAAAAAgUAAAAPJHNpemUxNDkyMzE0OTcxAAAAAAAAAAASBQAAABAkYWNjMTgxNDkyMzE0OTcxBAAAABAkYWNjMTkxNDkyMzE0OTcxCQEAAAATUHJldmlvdXNSZXdhcmRFbnRyeQAAAAIFAAAAECRhY2MxODE0OTIzMTQ5NzEJAAGRAAAAAgUAAAAPJGxpc3QxNDkyMzE0OTcxAAAAAAAAAAASAwkAAAAAAAACBQAAAA8kc2l6ZTE0OTIzMTQ5NzEAAAAAAAAAABMFAAAAECRhY2MxOTE0OTIzMTQ5NzEEAAAAECRhY2MyMDE0OTIzMTQ5NzEJAQAAABNQcmV2aW91c1Jld2FyZEVudHJ5AAAAAgUAAAAQJGFjYzE5MTQ5MjMxNDk3MQkAAZEAAAACBQAAAA8kbGlzdDE0OTIzMTQ5NzEAAAAAAAAAABMDCQAAAAAAAAIFAAAADyRzaXplMTQ5MjMxNDk3MQAAAAAAAAAAFAUAAAAQJGFjYzIwMTQ5MjMxNDk3MQQAAAAQJGFjYzIxMTQ5MjMxNDk3MQkBAAAAE1ByZXZpb3VzUmV3YXJkRW50cnkAAAACBQAAABAkYWNjMjAxNDkyMzE0OTcxCQABkQAAAAIFAAAADyRsaXN0MTQ5MjMxNDk3MQAAAAAAAAAAFAMJAAAAAAAAAgUAAAAPJHNpemUxNDkyMzE0OTcxAAAAAAAAAAAVBQAAABAkYWNjMjExNDkyMzE0OTcxBAAAABAkYWNjMjIxNDkyMzE0OTcxCQEAAAATUHJldmlvdXNSZXdhcmRFbnRyeQAAAAIFAAAAECRhY2MyMTE0OTIzMTQ5NzEJAAGRAAAAAgUAAAAPJGxpc3QxNDkyMzE0OTcxAAAAAAAAAAAVCQAAAgAAAAECAAAAE0xpc3Qgc2l6ZSBleGNlZWQgMjEEAAAAFWN1cnJlbnRSZXdhcmRFbnRyeU5ldwQAAAAPJGxpc3QxNTAwNDE1MDUwBQAAAAxjdXJyZW50UG9vbHMEAAAADyRzaXplMTUwMDQxNTA1MAkAAZAAAAABBQAAAA8kbGlzdDE1MDA0MTUwNTAEAAAADyRhY2MwMTUwMDQxNTA1MAUAAAADbmlsAwkAAAAAAAACBQAAAA8kc2l6ZTE1MDA0MTUwNTAAAAAAAAAAAAAFAAAADyRhY2MwMTUwMDQxNTA1MAQAAAAPJGFjYzExNTAwNDE1MDUwCQEAAAASQ3VycmVudFJld2FyZEVudHJ5AAAAAgUAAAAPJGFjYzAxNTAwNDE1MDUwCQABkQAAAAIFAAAADyRsaXN0MTUwMDQxNTA1MAAAAAAAAAAAAAMJAAAAAAAAAgUAAAAPJHNpemUxNTAwNDE1MDUwAAAAAAAAAAABBQAAAA8kYWNjMTE1MDA0MTUwNTAEAAAADyRhY2MyMTUwMDQxNTA1MAkBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIFAAAADyRhY2MxMTUwMDQxNTA1MAkAAZEAAAACBQAAAA8kbGlzdDE1MDA0MTUwNTAAAAAAAAAAAAEDCQAAAAAAAAIFAAAADyRzaXplMTUwMDQxNTA1MAAAAAAAAAAAAgUAAAAPJGFjYzIxNTAwNDE1MDUwBAAAAA8kYWNjMzE1MDA0MTUwNTAJAQAAABJDdXJyZW50UmV3YXJkRW50cnkAAAACBQAAAA8kYWNjMjE1MDA0MTUwNTAJAAGRAAAAAgUAAAAPJGxpc3QxNTAwNDE1MDUwAAAAAAAAAAACAwkAAAAAAAACBQAAAA8kc2l6ZTE1MDA0MTUwNTAAAAAAAAAAAAMFAAAADyRhY2MzMTUwMDQxNTA1MAQAAAAPJGFjYzQxNTAwNDE1MDUwCQEAAAASQ3VycmVudFJld2FyZEVudHJ5AAAAAgUAAAAPJGFjYzMxNTAwNDE1MDUwCQABkQAAAAIFAAAADyRsaXN0MTUwMDQxNTA1MAAAAAAAAAAAAwMJAAAAAAAAAgUAAAAPJHNpemUxNTAwNDE1MDUwAAAAAAAAAAAEBQAAAA8kYWNjNDE1MDA0MTUwNTAEAAAADyRhY2M1MTUwMDQxNTA1MAkBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIFAAAADyRhY2M0MTUwMDQxNTA1MAkAAZEAAAACBQAAAA8kbGlzdDE1MDA0MTUwNTAAAAAAAAAAAAQDCQAAAAAAAAIFAAAADyRzaXplMTUwMDQxNTA1MAAAAAAAAAAABQUAAAAPJGFjYzUxNTAwNDE1MDUwBAAAAA8kYWNjNjE1MDA0MTUwNTAJAQAAABJDdXJyZW50UmV3YXJkRW50cnkAAAACBQAAAA8kYWNjNTE1MDA0MTUwNTAJAAGRAAAAAgUAAAAPJGxpc3QxNTAwNDE1MDUwAAAAAAAAAAAFAwkAAAAAAAACBQAAAA8kc2l6ZTE1MDA0MTUwNTAAAAAAAAAAAAYFAAAADyRhY2M2MTUwMDQxNTA1MAQAAAAPJGFjYzcxNTAwNDE1MDUwCQEAAAASQ3VycmVudFJld2FyZEVudHJ5AAAAAgUAAAAPJGFjYzYxNTAwNDE1MDUwCQABkQAAAAIFAAAADyRsaXN0MTUwMDQxNTA1MAAAAAAAAAAABgMJAAAAAAAAAgUAAAAPJHNpemUxNTAwNDE1MDUwAAAAAAAAAAAHBQAAAA8kYWNjNzE1MDA0MTUwNTAEAAAADyRhY2M4MTUwMDQxNTA1MAkBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIFAAAADyRhY2M3MTUwMDQxNTA1MAkAAZEAAAACBQAAAA8kbGlzdDE1MDA0MTUwNTAAAAAAAAAAAAcDCQAAAAAAAAIFAAAADyRzaXplMTUwMDQxNTA1MAAAAAAAAAAACAUAAAAPJGFjYzgxNTAwNDE1MDUwBAAAAA8kYWNjOTE1MDA0MTUwNTAJAQAAABJDdXJyZW50UmV3YXJkRW50cnkAAAACBQAAAA8kYWNjODE1MDA0MTUwNTAJAAGRAAAAAgUAAAAPJGxpc3QxNTAwNDE1MDUwAAAAAAAAAAAIAwkAAAAAAAACBQAAAA8kc2l6ZTE1MDA0MTUwNTAAAAAAAAAAAAkFAAAADyRhY2M5MTUwMDQxNTA1MAQAAAAQJGFjYzEwMTUwMDQxNTA1MAkBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIFAAAADyRhY2M5MTUwMDQxNTA1MAkAAZEAAAACBQAAAA8kbGlzdDE1MDA0MTUwNTAAAAAAAAAAAAkDCQAAAAAAAAIFAAAADyRzaXplMTUwMDQxNTA1MAAAAAAAAAAACgUAAAAQJGFjYzEwMTUwMDQxNTA1MAQAAAAQJGFjYzExMTUwMDQxNTA1MAkBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIFAAAAECRhY2MxMDE1MDA0MTUwNTAJAAGRAAAAAgUAAAAPJGxpc3QxNTAwNDE1MDUwAAAAAAAAAAAKAwkAAAAAAAACBQAAAA8kc2l6ZTE1MDA0MTUwNTAAAAAAAAAAAAsFAAAAECRhY2MxMTE1MDA0MTUwNTAEAAAAECRhY2MxMjE1MDA0MTUwNTAJAQAAABJDdXJyZW50UmV3YXJkRW50cnkAAAACBQAAABAkYWNjMTExNTAwNDE1MDUwCQABkQAAAAIFAAAADyRsaXN0MTUwMDQxNTA1MAAAAAAAAAAACwMJAAAAAAAAAgUAAAAPJHNpemUxNTAwNDE1MDUwAAAAAAAAAAAMBQAAABAkYWNjMTIxNTAwNDE1MDUwBAAAABAkYWNjMTMxNTAwNDE1MDUwCQEAAAASQ3VycmVudFJld2FyZEVudHJ5AAAAAgUAAAAQJGFjYzEyMTUwMDQxNTA1MAkAAZEAAAACBQAAAA8kbGlzdDE1MDA0MTUwNTAAAAAAAAAAAAwDCQAAAAAAAAIFAAAADyRzaXplMTUwMDQxNTA1MAAAAAAAAAAADQUAAAAQJGFjYzEzMTUwMDQxNTA1MAQAAAAQJGFjYzE0MTUwMDQxNTA1MAkBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIFAAAAECRhY2MxMzE1MDA0MTUwNTAJAAGRAAAAAgUAAAAPJGxpc3QxNTAwNDE1MDUwAAAAAAAAAAANAwkAAAAAAAACBQAAAA8kc2l6ZTE1MDA0MTUwNTAAAAAAAAAAAA4FAAAAECRhY2MxNDE1MDA0MTUwNTAEAAAAECRhY2MxNTE1MDA0MTUwNTAJAQAAABJDdXJyZW50UmV3YXJkRW50cnkAAAACBQAAABAkYWNjMTQxNTAwNDE1MDUwCQABkQAAAAIFAAAADyRsaXN0MTUwMDQxNTA1MAAAAAAAAAAADgMJAAAAAAAAAgUAAAAPJHNpemUxNTAwNDE1MDUwAAAAAAAAAAAPBQAAABAkYWNjMTUxNTAwNDE1MDUwBAAAABAkYWNjMTYxNTAwNDE1MDUwCQEAAAASQ3VycmVudFJld2FyZEVudHJ5AAAAAgUAAAAQJGFjYzE1MTUwMDQxNTA1MAkAAZEAAAACBQAAAA8kbGlzdDE1MDA0MTUwNTAAAAAAAAAAAA8DCQAAAAAAAAIFAAAADyRzaXplMTUwMDQxNTA1MAAAAAAAAAAAEAUAAAAQJGFjYzE2MTUwMDQxNTA1MAQAAAAQJGFjYzE3MTUwMDQxNTA1MAkBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIFAAAAECRhY2MxNjE1MDA0MTUwNTAJAAGRAAAAAgUAAAAPJGxpc3QxNTAwNDE1MDUwAAAAAAAAAAAQAwkAAAAAAAACBQAAAA8kc2l6ZTE1MDA0MTUwNTAAAAAAAAAAABEFAAAAECRhY2MxNzE1MDA0MTUwNTAEAAAAECRhY2MxODE1MDA0MTUwNTAJAQAAABJDdXJyZW50UmV3YXJkRW50cnkAAAACBQAAABAkYWNjMTcxNTAwNDE1MDUwCQABkQAAAAIFAAAADyRsaXN0MTUwMDQxNTA1MAAAAAAAAAAAEQMJAAAAAAAAAgUAAAAPJHNpemUxNTAwNDE1MDUwAAAAAAAAAAASBQAAABAkYWNjMTgxNTAwNDE1MDUwBAAAABAkYWNjMTkxNTAwNDE1MDUwCQEAAAASQ3VycmVudFJld2FyZEVudHJ5AAAAAgUAAAAQJGFjYzE4MTUwMDQxNTA1MAkAAZEAAAACBQAAAA8kbGlzdDE1MDA0MTUwNTAAAAAAAAAAABIDCQAAAAAAAAIFAAAADyRzaXplMTUwMDQxNTA1MAAAAAAAAAAAEwUAAAAQJGFjYzE5MTUwMDQxNTA1MAQAAAAQJGFjYzIwMTUwMDQxNTA1MAkBAAAAEkN1cnJlbnRSZXdhcmRFbnRyeQAAAAIFAAAAECRhY2MxOTE1MDA0MTUwNTAJAAGRAAAAAgUAAAAPJGxpc3QxNTAwNDE1MDUwAAAAAAAAAAATAwkAAAAAAAACBQAAAA8kc2l6ZTE1MDA0MTUwNTAAAAAAAAAAABQFAAAAECRhY2MyMDE1MDA0MTUwNTAEAAAAECRhY2MyMTE1MDA0MTUwNTAJAQAAABJDdXJyZW50UmV3YXJkRW50cnkAAAACBQAAABAkYWNjMjAxNTAwNDE1MDUwCQABkQAAAAIFAAAADyRsaXN0MTUwMDQxNTA1MAAAAAAAAAAAFAMJAAAAAAAAAgUAAAAPJHNpemUxNTAwNDE1MDUwAAAAAAAAAAAVBQAAABAkYWNjMjExNTAwNDE1MDUwBAAAABAkYWNjMjIxNTAwNDE1MDUwCQEAAAASQ3VycmVudFJld2FyZEVudHJ5AAAAAgUAAAAQJGFjYzIxMTUwMDQxNTA1MAkAAZEAAAACBQAAAA8kbGlzdDE1MDA0MTUwNTAAAAAAAAAAABUJAAACAAAAAQIAAAATTGlzdCBzaXplIGV4Y2VlZCAyMQkABE4AAAACCQAETgAAAAIFAAAAFnByZXZpb3VzUmV3YXJkRW50cnlOZXcFAAAAFWN1cnJlbnRSZXdhcmRFbnRyeU5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAVa2V5UmV3YXJkVXBkYXRlSGVpZ2h0BQAAABJyZXdhcmRVcGRhdGVIZWlnaHQFAAAAA25pbAAAAAFpAQAAAAhzaHV0ZG93bgAAAAADCQEAAAABIQAAAAEFAAAACGlzQWN0aXZlCQAAAgAAAAEJAAEsAAAAAgIAAAAiREFwcCBpcyBhbHJlYWR5IHN1c3BlbmRlZC4gQ2F1c2U6IAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABB0AAAACBQAAAAR0aGlzBQAAAAhrZXlDYXVzZQIAAAAadGhlIGNhdXNlIHdhc24ndCBzcGVjaWZpZWQDCQEAAAABIQAAAAEJAQAAAA9jb250YWluc0VsZW1lbnQAAAACCQAETAAAAAIFAAAADGFkbWluUHViS2V5MQkABEwAAAACBQAAAAxhZG1pblB1YktleTIJAARMAAAAAgUAAAAMYWRtaW5QdWJLZXkzCQAETAAAAAIFAAAAFGFkbWluUHViS2V5U3RhcnRTdG9wBQAAAANuaWwIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQkAAAIAAAABAgAAACFPbmx5IGFkbWluIGNhbiBjYWxsIHRoaXMgZnVuY3Rpb24JAQAAAAdzdXNwZW5kAAAAAQIAAAAPUGF1c2VkIGJ5IGFkbWluAAAAAWkBAAAACGFjdGl2YXRlAAAAAAMFAAAACGlzQWN0aXZlCQAAAgAAAAECAAAAFkRBcHAgaXMgYWxyZWFkeSBhY3RpdmUDCQEAAAABIQAAAAEJAQAAAA9jb250YWluc0VsZW1lbnQAAAACCQAETAAAAAIFAAAADGFkbWluUHViS2V5MQkABEwAAAACBQAAAAxhZG1pblB1YktleTIJAARMAAAAAgUAAAAMYWRtaW5QdWJLZXkzCQAETAAAAAIFAAAAFGFkbWluUHViS2V5U3RhcnRTdG9wBQAAAANuaWwIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQkAAAIAAAABAgAAACFPbmx5IGFkbWluIGNhbiBjYWxsIHRoaXMgZnVuY3Rpb24JAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIFAAAACWtleUFjdGl2ZQYJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQUAAAAIa2V5Q2F1c2UFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAEmFkbWluUHViS2V5MVNpZ25lZAMJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAABQAAAAxhZG1pblB1YktleTEAAAAAAAAAAAEAAAAAAAAAAAAEAAAAEmFkbWluUHViS2V5MlNpZ25lZAMJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAABBQAAAAxhZG1pblB1YktleTIAAAAAAAAAAAEAAAAAAAAAAAAEAAAAEmFkbWluUHViS2V5M1NpZ25lZAMJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAACBQAAAAxhZG1pblB1YktleTMAAAAAAAAAAAEAAAAAAAAAAAAJAABnAAAAAgkAAGQAAAACCQAAZAAAAAIFAAAAEmFkbWluUHViS2V5MVNpZ25lZAUAAAASYWRtaW5QdWJLZXkyU2lnbmVkBQAAABJhZG1pblB1YktleTNTaWduZWQAAAAAAAAAAAKCj8Fl", "height": 2620392, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6kyxXSvpsLFRYRXQTXNfvPsiyXwE3jp7x4htMjAbcdBG Next: 8wvL9cAnrvtKusdLJXMjT5n7KeSWQxGjnRtD1PmvBZFF Diff:
OldNewDifferences
468468 then $acc201452014553
469469 else {
470470 let $acc211452014553 = sum($acc201452014553, $list1452014553[20])
471- throw("List size exceed 20")
471+ if (($size1452014553 == 21))
472+ then $acc211452014553
473+ else {
474+ let $acc221452014553 = sum($acc211452014553, $list1452014553[21])
475+ throw("List size exceed 21")
476+ }
472477 }
473478 }
474479 }
579584 then $acc201458214614
580585 else {
581586 let $acc211458214614 = sum($acc201458214614, $list1458214614[20])
582- throw("List size exceed 20")
587+ if (($size1458214614 == 21))
588+ then $acc211458214614
589+ else {
590+ let $acc221458214614 = sum($acc211458214614, $list1458214614[21])
591+ throw("List size exceed 21")
592+ }
583593 }
584594 }
585595 }
697707 then $acc201492314971
698708 else {
699709 let $acc211492314971 = PreviousRewardEntry($acc201492314971, $list1492314971[20])
700- throw("List size exceed 20")
710+ if (($size1492314971 == 21))
711+ then $acc211492314971
712+ else {
713+ let $acc221492314971 = PreviousRewardEntry($acc211492314971, $list1492314971[21])
714+ throw("List size exceed 21")
715+ }
701716 }
702717 }
703718 }
808823 then $acc201500415050
809824 else {
810825 let $acc211500415050 = CurrentRewardEntry($acc201500415050, $list1500415050[20])
811- throw("List size exceed 20")
826+ if (($size1500415050 == 21))
827+ then $acc211500415050
828+ else {
829+ let $acc221500415050 = CurrentRewardEntry($acc211500415050, $list1500415050[21])
830+ throw("List size exceed 21")
831+ }
812832 }
813833 }
814834 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let adminPubKey1 = base58'DXDY2itiEcYBtGkVLnkpHtDFyWQUkoLJz79uJ7ECbMrA'
55
66 let adminPubKey2 = base58'E6Wa1SGoktYcjHjsKrvjMiqJY3SWmGKcD8Q5L8kxSPS7'
77
88 let adminPubKey3 = base58'AZmWJtuy4GeVrMmJH4hfFBRApe1StvhJSk4jcbT6bArQ'
99
1010 let adminPubKeyStartStop = base58'EtVkT6ed8GtbUiVVEqdmEqsp2J4qbb3rre2HFgxeVYdg'
1111
1212 let adminPubKeyWallet = base58'GTY8yEJ2S4heRompxyvbJoBN1Td5BM5Pp4JgVbj9tmCw'
1313
1414 let keyActive = "active"
1515
1616 let keyCause = "shutdown_cause"
1717
1818 let keyLastInterest = "last_interest"
1919
2020 let keyUserLastInterest = "_last_interest"
2121
2222 let keyUserSWOPLocked = "_SWOP_amount"
2323
2424 let keyUserGetBackHeight = "_getBackHeight"
2525
2626 let keyTotalSWOPLocked = "total_SWOP_amount"
2727
2828 let kUserTotalVoteSWOP = "_user_total_SWOP_vote"
2929
3030 let keyUserVoteOptionAmount = "_SWOP_option_amount"
3131
3232 let keyTotalVoteOptionAmount = "total_SWOP_option_amount"
3333
3434 let keyUserSWOPClaimedAmount = "_SWOP_claimed_amount"
3535
3636 let keyUserSWOPLastClaimedAmount = "_SWOP_last_claimed_amount"
3737
3838 let keyVoteName = "vote_name"
3939
4040 let keyOptionName = "_option_name"
4141
4242 let keyVotingStartHeight = "_startHeight"
4343
4444 let keyVoteDuration = "_vote_duration"
4545
4646 let keyRewardPoolFractionCurrent = "_current_pool_fraction_reward"
4747
4848 let keyRewardPoolFractionPrevious = "_previous_pool_fraction_reward"
4949
5050 let keyTotalRewardPerBlockCurrent = "total_reward_per_block_current"
5151
5252 let keyTotalRewardPerBlockPrevious = "total_reward_per_block_previous"
5353
5454 let keyRewardUpdateHeight = "reward_update_height"
5555
5656 let keyNoVotingForNewPool = "_vote_no"
5757
5858 let keyYesVotingForNewPool = "_vote_yes"
5959
6060 let keyAmountOfVotingForNewPool = "max_amount_voting"
6161
6262 let keyStatusOfVotingForNewPool = "_status"
6363
6464 let keyHeightOfPoolVotingForNewPool = "_finish_height"
6565
6666 let activeVoteFirst = "voting_active_cell_1"
6767
6868 let activeVoteSecond = "voting_active_cell_2"
6969
7070 let activeVoteThird = "voting_active_cell_3"
7171
7272 let isActive = valueOrElse(getBoolean(this, keyActive), true)
7373
7474 let farmingSWOPAddress = Address(base58'3P73HDkPqG15nLXevjCbmXtazHYTZbpPoPw')
7575
7676 let votingLiteContract = Address(base58'3PQZWxShKGRgBN1qoJw6B4s9YWS9FneZTPg')
7777
7878 let votingForNewPool = Address(base58'3PHgHf5C4WvHJucSHrjoVnMFsP1EhWffVLt')
7979
8080 let keySWOPid = "SWOP_id"
8181
8282 let SWOP = fromBase58String(getStringValue(farmingSWOPAddress, keySWOPid))
8383
8484 let scaleValue = 100000000
8585
8686 let totalVoteShare = 10000000000
8787
8888 let kStartHeight = "start_height"
8989
9090 let kBasePeriod = "base_period"
9191
9292 let kPeriodLength = "period_length"
9393
9494 let kUserTotalStruc = "_user_total_struc"
9595
9696 let basePeriod = valueOrErrorMessage(getInteger(votingLiteContract, kBasePeriod), "Empty kBasePeriod at voting contract")
9797
9898 let startHeight = valueOrErrorMessage(getInteger(votingLiteContract, kStartHeight), "Empty kStartHeight at voting contract")
9999
100100 let periodLength = valueOrErrorMessage(getInteger(votingLiteContract, kPeriodLength), "Empty kPeriodLength at voting contract")
101101
102102 let firstActiveVote = valueOrElse(getString(votingForNewPool, activeVoteFirst), "")
103103
104104 let secondActiveVote = valueOrElse(getString(votingForNewPool, activeVoteSecond), "")
105105
106106 let thirdActiveVote = valueOrElse(getString(votingForNewPool, activeVoteThird), "")
107107
108108 let currVotingPeriod = (basePeriod + ((height - startHeight) / periodLength))
109109
110110 func suspend (cause) = [BooleanEntry(keyActive, false), StringEntry(keyCause, cause)]
111111
112112
113113 func throwNotEnoughSWOP () = throw("Not enough SWOP: userSWOPLocked - userTotalVoteAmount < voteSWOPAmount")
114114
115115
116116 func getLastInterestInfo () = {
117117 let lastInterest = valueOrElse(getInteger(this, keyLastInterest), 0)
118118 lastInterest
119119 }
120120
121121
122122 func getUserSWOPLocked (user) = valueOrElse(getInteger(this, (toString(user) + keyUserSWOPLocked)), 0)
123123
124124
125125 func getUserSWOPClaimedAmount (user) = valueOrElse(getInteger(this, (toString(user) + keyUserSWOPClaimedAmount)), 0)
126126
127127
128128 func getUserTotalVoteAmount (user) = valueOrElse(getInteger(votingLiteContract, (toString(user) + kUserTotalVoteSWOP)), 0)
129129
130130
131131 func getUserInterestInfo (user,lastInterest) = {
132132 let userSWOPAmount = getUserSWOPLocked(user)
133133 let userLastInterest = getInteger(this, (toString(user) + keyUserLastInterest))
134134 let userLastInterestValue = match userLastInterest {
135135 case userLastInterest: Int =>
136136 userLastInterest
137137 case _ =>
138138 lastInterest
139139 }
140140 $Tuple2(userLastInterestValue, userSWOPAmount)
141141 }
142142
143143
144144 func getUserTotalVoteAmountForOnePool (pool,user) = {
145145 let voting = valueOrElse(getInteger(votingForNewPool, pool), -1)
146146 let heightOfVoting = valueOrElse(getInteger(votingForNewPool, (toString(voting) + keyHeightOfPoolVotingForNewPool)), 0)
147147 let statusOfVoting = valueOrElse(getBoolean(votingForNewPool, (toString(voting) + keyStatusOfVotingForNewPool)), true)
148148 let currentHeight = height
149149 if ((0 > voting))
150150 then 0
151151 else if (!(statusOfVoting))
152152 then 0
153153 else if ((heightOfVoting > currentHeight))
154154 then (valueOrElse(getInteger(votingForNewPool, (((toString(user) + "_") + toString(voting)) + keyYesVotingForNewPool)), 0) + valueOrElse(getInteger(votingForNewPool, (((toString(user) + "_") + toString(voting)) + keyNoVotingForNewPool)), 0))
155155 else 0
156156 }
157157
158158
159159 func getUserTotalVoteForNewPoolAmount (user) = {
160160 let listOfVoting = [getUserTotalVoteAmountForOnePool(firstActiveVote, user), getUserTotalVoteAmountForOnePool(secondActiveVote, user), getUserTotalVoteAmountForOnePool(thirdActiveVote, user)]
161161 max(listOfVoting)
162162 }
163163
164164
165165 func getTotalSWOPLocked () = valueOrElse(getInteger(this, keyTotalSWOPLocked), 0)
166166
167167
168168 func getUserVoteInfo (user) = {
169169 let $t057266277 = if (isDefined(getString(votingLiteContract, (toString(user) + kUserTotalStruc))))
170170 then {
171171 let data = split(valueOrErrorMessage(getString(votingLiteContract, (toString(user) + kUserTotalStruc)), "Empty kUserTotalStruc"), "_")
172172 $Tuple3(parseIntValue(data[0]), parseIntValue(data[1]), parseIntValue(data[2]))
173173 }
174174 else {
175175 let uPoolTotalSWOP = valueOrElse(getInteger(votingLiteContract, (toString(user) + kUserTotalVoteSWOP)), 0)
176176 $Tuple3(uPoolTotalSWOP, 0, currVotingPeriod)
177177 }
178178 let userTotalVoteSWOP = $t057266277._1
179179 let userUnvoted = $t057266277._2
180180 let userUnvotedPeriod = $t057266277._3
181181 let userUnvotedActual = if ((userUnvotedPeriod == currVotingPeriod))
182182 then userUnvoted
183183 else 0
184184 $Tuple2(userTotalVoteSWOP, userUnvotedActual)
185185 }
186186
187187
188188 func getUserVoteOptionAmount (user) = valueOrElse(getInteger(this, (toString(user) + keyUserVoteOptionAmount)), 0)
189189
190190
191191 func getVotingStartHeight (voteName) = valueOrElse(getInteger(this, (voteName + keyVotingStartHeight)), 0)
192192
193193
194194 func getVoteOptionAmount (user,voteName,option) = {
195195 let userVoteOptionAmount = getInteger(this, (((voteName + option) + toString(user)) + keyUserVoteOptionAmount))
196196 let uvoa = match userVoteOptionAmount {
197197 case uvoa: Int =>
198198 uvoa
199199 case uvoa: Unit =>
200200 0
201201 case _ =>
202202 throw("Match error")
203203 }
204204 valueOrErrorMessage(uvoa, (((("No data on the key: " + voteName) + option) + toString(user)) + keyUserVoteOptionAmount))
205205 }
206206
207207
208208 func getVoteDuration (voteName) = valueOrErrorMessage(getInteger(this, (voteName + keyVoteDuration)), (("No data on the key: " + voteName) + keyVoteDuration))
209209
210210
211211 func getTotalVoteOptionAmount (voteName,option) = {
212212 let totalVoteOptionAmount = getInteger(this, ((voteName + option) + keyTotalVoteOptionAmount))
213213 let tvoa = match totalVoteOptionAmount {
214214 case tvoa: Int =>
215215 tvoa
216216 case tvoa: Unit =>
217217 0
218218 case _ =>
219219 throw("Match error")
220220 }
221221 tvoa
222222 }
223223
224224
225225 func getUserGetBackAmount (voteName,option,user,getBackSWOPHeight) = {
226226 let key = ((((((voteName + "_") + option) + "_") + toString(user)) + "_") + toString(getBackSWOPHeight))
227227 valueOrErrorMessage(getInteger(this, key), ("No data on the key: " + key))
228228 }
229229
230230
231231 func claimCalc (caller) = {
232232 let lastInterest = getLastInterestInfo()
233233 let $t080698149 = getUserInterestInfo(caller, lastInterest)
234234 let userLastInterest = $t080698149._1
235235 let userSWOPLocked = $t080698149._2
236236 let claimAmount = fraction(userSWOPLocked, (lastInterest - userLastInterest), scaleValue)
237237 let userNewInterest = lastInterest
238238 $Tuple2(userNewInterest, claimAmount)
239239 }
240240
241241
242242 @Callable(i)
243243 func airDrop () = if (!(isActive))
244244 then throw("DApp is inactive at this moment")
245245 else {
246246 let $t084148489 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
247247 let pmtAmount = $t084148489._1
248248 let pmtAssetId = $t084148489._2
249249 if ((pmtAssetId != SWOP))
250250 then throw("Incorrect pmtAssetId")
251251 else {
252252 let totalSWOPLocked = getTotalSWOPLocked()
253253 let lastInterest = getLastInterestInfo()
254254 let interestNew = (lastInterest + fraction(pmtAmount, scaleValue, totalSWOPLocked))
255255 [IntegerEntry(keyLastInterest, interestNew)]
256256 }
257257 }
258258
259259
260260
261261 @Callable(i)
262262 func lockSWOP () = if (!(isActive))
263263 then throw("DApp is inactive at this moment")
264264 else {
265265 let $t089279002 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
266266 let pmtAmount = $t089279002._1
267267 let pmtAssetId = $t089279002._2
268268 if ((pmtAssetId != SWOP))
269269 then throw("Incorrect pmtAssetId")
270270 else {
271271 let lastInterest = getLastInterestInfo()
272272 let $t091189200 = getUserInterestInfo(i.caller, lastInterest)
273273 let userLastInterest = $t091189200._1
274274 let userSWOPLocked = $t091189200._2
275275 let claimAmount = fraction(userSWOPLocked, (lastInterest - userLastInterest), scaleValue)
276276 let userSWOPLockedNew = ((userSWOPLocked + pmtAmount) + claimAmount)
277277 let userNewInterest = lastInterest
278278 let totalSWOPLocked = getTotalSWOPLocked()
279279 let totalSWOPLockedNew = ((totalSWOPLocked + pmtAmount) + claimAmount)
280280 let userClaimedAmount = getUserSWOPClaimedAmount(i.caller)
281281 let userClaimedAmountNew = (userClaimedAmount + claimAmount)
282282 [IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry((toString(i.caller) + keyUserSWOPLocked), userSWOPLockedNew), IntegerEntry(keyTotalSWOPLocked, totalSWOPLockedNew), IntegerEntry((toString(i.caller) + keyUserSWOPClaimedAmount), userClaimedAmountNew), IntegerEntry((toString(i.caller) + keyUserSWOPLastClaimedAmount), claimAmount)]
283283 }
284284 }
285285
286286
287287
288288 @Callable(i)
289289 func withdrawSWOP (withdrawAmount) = if (!(isActive))
290290 then throw("DApp is inactive at this moment")
291291 else if ((0 >= withdrawAmount))
292292 then throw("withdrawAmount <= 0")
293293 else {
294294 let totalSWOPLocked = getTotalSWOPLocked()
295295 let userSWOPLocked = getUserSWOPLocked(i.caller)
296296 let $t01035010405 = claimCalc(i.caller)
297297 let userNewInterest = $t01035010405._1
298298 let claimAmount = $t01035010405._2
299299 let $t01041010475 = getUserVoteInfo(i.caller)
300300 let userVoteAmount = $t01041010475._1
301301 let userUnvoteAmount = $t01041010475._2
302302 let userVoteAmountForNewPool = getUserTotalVoteForNewPoolAmount(i.caller)
303303 if (if (if ((0 > userUnvoteAmount))
304304 then true
305305 else (0 > userVoteAmount))
306306 then true
307307 else (0 > userVoteAmountForNewPool))
308308 then throw("userUnvoteAmount < 0 || userVoteAmount < 0 || userVoteAmountForNewPool < 0")
309309 else {
310310 let availableToUnstake = (userSWOPLocked - max([userVoteAmountForNewPool, (userVoteAmount + userUnvoteAmount)]))
311311 if ((withdrawAmount > availableToUnstake))
312312 then throw("withdrawAmount > availableToUnstake")
313313 else {
314314 let totalSWOPLockedNew = ((totalSWOPLocked + claimAmount) - withdrawAmount)
315315 let userSWOPamountNew = ((userSWOPLocked + claimAmount) - withdrawAmount)
316316 let userClaimedAmount = getUserSWOPClaimedAmount(i.caller)
317317 let userClaimedAmountNew = (userClaimedAmount + claimAmount)
318318 [IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry((toString(i.caller) + keyUserSWOPLocked), userSWOPamountNew), IntegerEntry(keyTotalSWOPLocked, totalSWOPLockedNew), ScriptTransfer(i.caller, withdrawAmount, SWOP), IntegerEntry((toString(i.caller) + keyUserSWOPClaimedAmount), userClaimedAmountNew), IntegerEntry((toString(i.caller) + keyUserSWOPLastClaimedAmount), claimAmount)]
319319 }
320320 }
321321 }
322322
323323
324324
325325 @Callable(i)
326326 func claimAndWithdrawSWOP () = if (!(isActive))
327327 then throw("DApp is inactive at this moment")
328328 else {
329329 let lastInterest = getLastInterestInfo()
330330 let $t01185011905 = claimCalc(i.caller)
331331 let userNewInterest = $t01185011905._1
332332 let claimAmount = $t01185011905._2
333333 let userClaimedAmount = getUserSWOPClaimedAmount(i.caller)
334334 let userClaimedAmountNew = (userClaimedAmount + claimAmount)
335335 if ((claimAmount == 0))
336336 then throw("You have 0 available SWOP")
337337 else [IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry((toString(i.caller) + keyUserSWOPClaimedAmount), userClaimedAmountNew), IntegerEntry((toString(i.caller) + keyUserSWOPLastClaimedAmount), claimAmount), ScriptTransfer(i.caller, claimAmount, SWOP)]
338338 }
339339
340340
341341
342342 @Callable(i)
343343 func claimAndStakeSWOP () = if (!(isActive))
344344 then throw("DApp is inactive at this moment")
345345 else {
346346 let totalSWOPLocked = getTotalSWOPLocked()
347347 let userSWOPLocked = getUserSWOPLocked(i.caller)
348348 let lastInterest = getLastInterestInfo()
349349 let $t01268412739 = claimCalc(i.caller)
350350 let userNewInterest = $t01268412739._1
351351 let claimAmount = $t01268412739._2
352352 let userSWOPLockedNew = (userSWOPLocked + claimAmount)
353353 let totalSWOPLockedNew = (totalSWOPLocked + claimAmount)
354354 let userClaimedAmount = getUserSWOPClaimedAmount(i.caller)
355355 let userClaimedAmountNew = (userClaimedAmount + claimAmount)
356356 if ((claimAmount == 0))
357357 then throw("You have 0 available SWOP")
358358 else [IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry(keyTotalSWOPLocked, totalSWOPLockedNew), IntegerEntry((toString(i.caller) + keyUserSWOPLocked), userSWOPLockedNew), IntegerEntry((toString(i.caller) + keyUserSWOPClaimedAmount), userClaimedAmountNew), IntegerEntry((toString(i.caller) + keyUserSWOPLastClaimedAmount), claimAmount)]
359359 }
360360
361361
362362
363363 @Callable(i)
364364 func updateWeights (previousPools,previousRewards,currentPools,currentRewards,rewardUpdateHeight) = if (!(isActive))
365365 then throw("DApp is inactive at this moment")
366366 else if (!(containsElement([adminPubKey1, adminPubKey2, adminPubKey3, adminPubKeyStartStop, adminPubKeyWallet], i.callerPublicKey)))
367367 then throw("Only admin can call this function")
368368 else {
369369 func sum (a,b) = (a + b)
370370
371371 func PreviousRewardEntry (accumulated,pool) = {
372372 let poolIndex = value(indexOf(previousPools, pool))
373373 let poolReward = previousRewards[poolIndex]
374374 IntegerEntry((pool + keyRewardPoolFractionPrevious), poolReward) :: accumulated
375375 }
376376
377377 func CurrentRewardEntry (accumulated,pool) = {
378378 let poolIndex = value(indexOf(currentPools, pool))
379379 let poolReward = currentRewards[poolIndex]
380380 IntegerEntry((pool + keyRewardPoolFractionCurrent), poolReward) :: accumulated
381381 }
382382
383383 let sumRewardPrevious = {
384384 let $list1452014553 = previousRewards
385385 let $size1452014553 = size($list1452014553)
386386 let $acc01452014553 = 0
387387 if (($size1452014553 == 0))
388388 then $acc01452014553
389389 else {
390390 let $acc11452014553 = sum($acc01452014553, $list1452014553[0])
391391 if (($size1452014553 == 1))
392392 then $acc11452014553
393393 else {
394394 let $acc21452014553 = sum($acc11452014553, $list1452014553[1])
395395 if (($size1452014553 == 2))
396396 then $acc21452014553
397397 else {
398398 let $acc31452014553 = sum($acc21452014553, $list1452014553[2])
399399 if (($size1452014553 == 3))
400400 then $acc31452014553
401401 else {
402402 let $acc41452014553 = sum($acc31452014553, $list1452014553[3])
403403 if (($size1452014553 == 4))
404404 then $acc41452014553
405405 else {
406406 let $acc51452014553 = sum($acc41452014553, $list1452014553[4])
407407 if (($size1452014553 == 5))
408408 then $acc51452014553
409409 else {
410410 let $acc61452014553 = sum($acc51452014553, $list1452014553[5])
411411 if (($size1452014553 == 6))
412412 then $acc61452014553
413413 else {
414414 let $acc71452014553 = sum($acc61452014553, $list1452014553[6])
415415 if (($size1452014553 == 7))
416416 then $acc71452014553
417417 else {
418418 let $acc81452014553 = sum($acc71452014553, $list1452014553[7])
419419 if (($size1452014553 == 8))
420420 then $acc81452014553
421421 else {
422422 let $acc91452014553 = sum($acc81452014553, $list1452014553[8])
423423 if (($size1452014553 == 9))
424424 then $acc91452014553
425425 else {
426426 let $acc101452014553 = sum($acc91452014553, $list1452014553[9])
427427 if (($size1452014553 == 10))
428428 then $acc101452014553
429429 else {
430430 let $acc111452014553 = sum($acc101452014553, $list1452014553[10])
431431 if (($size1452014553 == 11))
432432 then $acc111452014553
433433 else {
434434 let $acc121452014553 = sum($acc111452014553, $list1452014553[11])
435435 if (($size1452014553 == 12))
436436 then $acc121452014553
437437 else {
438438 let $acc131452014553 = sum($acc121452014553, $list1452014553[12])
439439 if (($size1452014553 == 13))
440440 then $acc131452014553
441441 else {
442442 let $acc141452014553 = sum($acc131452014553, $list1452014553[13])
443443 if (($size1452014553 == 14))
444444 then $acc141452014553
445445 else {
446446 let $acc151452014553 = sum($acc141452014553, $list1452014553[14])
447447 if (($size1452014553 == 15))
448448 then $acc151452014553
449449 else {
450450 let $acc161452014553 = sum($acc151452014553, $list1452014553[15])
451451 if (($size1452014553 == 16))
452452 then $acc161452014553
453453 else {
454454 let $acc171452014553 = sum($acc161452014553, $list1452014553[16])
455455 if (($size1452014553 == 17))
456456 then $acc171452014553
457457 else {
458458 let $acc181452014553 = sum($acc171452014553, $list1452014553[17])
459459 if (($size1452014553 == 18))
460460 then $acc181452014553
461461 else {
462462 let $acc191452014553 = sum($acc181452014553, $list1452014553[18])
463463 if (($size1452014553 == 19))
464464 then $acc191452014553
465465 else {
466466 let $acc201452014553 = sum($acc191452014553, $list1452014553[19])
467467 if (($size1452014553 == 20))
468468 then $acc201452014553
469469 else {
470470 let $acc211452014553 = sum($acc201452014553, $list1452014553[20])
471- throw("List size exceed 20")
471+ if (($size1452014553 == 21))
472+ then $acc211452014553
473+ else {
474+ let $acc221452014553 = sum($acc211452014553, $list1452014553[21])
475+ throw("List size exceed 21")
476+ }
472477 }
473478 }
474479 }
475480 }
476481 }
477482 }
478483 }
479484 }
480485 }
481486 }
482487 }
483488 }
484489 }
485490 }
486491 }
487492 }
488493 }
489494 }
490495 }
491496 }
492497 }
493498 }
494499 let sumRewardCurrent = {
495500 let $list1458214614 = currentRewards
496501 let $size1458214614 = size($list1458214614)
497502 let $acc01458214614 = 0
498503 if (($size1458214614 == 0))
499504 then $acc01458214614
500505 else {
501506 let $acc11458214614 = sum($acc01458214614, $list1458214614[0])
502507 if (($size1458214614 == 1))
503508 then $acc11458214614
504509 else {
505510 let $acc21458214614 = sum($acc11458214614, $list1458214614[1])
506511 if (($size1458214614 == 2))
507512 then $acc21458214614
508513 else {
509514 let $acc31458214614 = sum($acc21458214614, $list1458214614[2])
510515 if (($size1458214614 == 3))
511516 then $acc31458214614
512517 else {
513518 let $acc41458214614 = sum($acc31458214614, $list1458214614[3])
514519 if (($size1458214614 == 4))
515520 then $acc41458214614
516521 else {
517522 let $acc51458214614 = sum($acc41458214614, $list1458214614[4])
518523 if (($size1458214614 == 5))
519524 then $acc51458214614
520525 else {
521526 let $acc61458214614 = sum($acc51458214614, $list1458214614[5])
522527 if (($size1458214614 == 6))
523528 then $acc61458214614
524529 else {
525530 let $acc71458214614 = sum($acc61458214614, $list1458214614[6])
526531 if (($size1458214614 == 7))
527532 then $acc71458214614
528533 else {
529534 let $acc81458214614 = sum($acc71458214614, $list1458214614[7])
530535 if (($size1458214614 == 8))
531536 then $acc81458214614
532537 else {
533538 let $acc91458214614 = sum($acc81458214614, $list1458214614[8])
534539 if (($size1458214614 == 9))
535540 then $acc91458214614
536541 else {
537542 let $acc101458214614 = sum($acc91458214614, $list1458214614[9])
538543 if (($size1458214614 == 10))
539544 then $acc101458214614
540545 else {
541546 let $acc111458214614 = sum($acc101458214614, $list1458214614[10])
542547 if (($size1458214614 == 11))
543548 then $acc111458214614
544549 else {
545550 let $acc121458214614 = sum($acc111458214614, $list1458214614[11])
546551 if (($size1458214614 == 12))
547552 then $acc121458214614
548553 else {
549554 let $acc131458214614 = sum($acc121458214614, $list1458214614[12])
550555 if (($size1458214614 == 13))
551556 then $acc131458214614
552557 else {
553558 let $acc141458214614 = sum($acc131458214614, $list1458214614[13])
554559 if (($size1458214614 == 14))
555560 then $acc141458214614
556561 else {
557562 let $acc151458214614 = sum($acc141458214614, $list1458214614[14])
558563 if (($size1458214614 == 15))
559564 then $acc151458214614
560565 else {
561566 let $acc161458214614 = sum($acc151458214614, $list1458214614[15])
562567 if (($size1458214614 == 16))
563568 then $acc161458214614
564569 else {
565570 let $acc171458214614 = sum($acc161458214614, $list1458214614[16])
566571 if (($size1458214614 == 17))
567572 then $acc171458214614
568573 else {
569574 let $acc181458214614 = sum($acc171458214614, $list1458214614[17])
570575 if (($size1458214614 == 18))
571576 then $acc181458214614
572577 else {
573578 let $acc191458214614 = sum($acc181458214614, $list1458214614[18])
574579 if (($size1458214614 == 19))
575580 then $acc191458214614
576581 else {
577582 let $acc201458214614 = sum($acc191458214614, $list1458214614[19])
578583 if (($size1458214614 == 20))
579584 then $acc201458214614
580585 else {
581586 let $acc211458214614 = sum($acc201458214614, $list1458214614[20])
582- throw("List size exceed 20")
587+ if (($size1458214614 == 21))
588+ then $acc211458214614
589+ else {
590+ let $acc221458214614 = sum($acc211458214614, $list1458214614[21])
591+ throw("List size exceed 21")
592+ }
583593 }
584594 }
585595 }
586596 }
587597 }
588598 }
589599 }
590600 }
591601 }
592602 }
593603 }
594604 }
595605 }
596606 }
597607 }
598608 }
599609 }
600610 }
601611 }
602612 }
603613 }
604614 }
605615 if ((height > rewardUpdateHeight))
606616 then throw("rewardUpdateHeight < height")
607617 else if (if ((sumRewardPrevious != totalVoteShare))
608618 then true
609619 else (sumRewardCurrent != totalVoteShare))
610620 then throw("sumRewardPrevious != totalVoteShare or sumRewardCurrent != totalVoteShare")
611621 else {
612622 let previousRewardEntryNew = {
613623 let $list1492314971 = previousPools
614624 let $size1492314971 = size($list1492314971)
615625 let $acc01492314971 = nil
616626 if (($size1492314971 == 0))
617627 then $acc01492314971
618628 else {
619629 let $acc11492314971 = PreviousRewardEntry($acc01492314971, $list1492314971[0])
620630 if (($size1492314971 == 1))
621631 then $acc11492314971
622632 else {
623633 let $acc21492314971 = PreviousRewardEntry($acc11492314971, $list1492314971[1])
624634 if (($size1492314971 == 2))
625635 then $acc21492314971
626636 else {
627637 let $acc31492314971 = PreviousRewardEntry($acc21492314971, $list1492314971[2])
628638 if (($size1492314971 == 3))
629639 then $acc31492314971
630640 else {
631641 let $acc41492314971 = PreviousRewardEntry($acc31492314971, $list1492314971[3])
632642 if (($size1492314971 == 4))
633643 then $acc41492314971
634644 else {
635645 let $acc51492314971 = PreviousRewardEntry($acc41492314971, $list1492314971[4])
636646 if (($size1492314971 == 5))
637647 then $acc51492314971
638648 else {
639649 let $acc61492314971 = PreviousRewardEntry($acc51492314971, $list1492314971[5])
640650 if (($size1492314971 == 6))
641651 then $acc61492314971
642652 else {
643653 let $acc71492314971 = PreviousRewardEntry($acc61492314971, $list1492314971[6])
644654 if (($size1492314971 == 7))
645655 then $acc71492314971
646656 else {
647657 let $acc81492314971 = PreviousRewardEntry($acc71492314971, $list1492314971[7])
648658 if (($size1492314971 == 8))
649659 then $acc81492314971
650660 else {
651661 let $acc91492314971 = PreviousRewardEntry($acc81492314971, $list1492314971[8])
652662 if (($size1492314971 == 9))
653663 then $acc91492314971
654664 else {
655665 let $acc101492314971 = PreviousRewardEntry($acc91492314971, $list1492314971[9])
656666 if (($size1492314971 == 10))
657667 then $acc101492314971
658668 else {
659669 let $acc111492314971 = PreviousRewardEntry($acc101492314971, $list1492314971[10])
660670 if (($size1492314971 == 11))
661671 then $acc111492314971
662672 else {
663673 let $acc121492314971 = PreviousRewardEntry($acc111492314971, $list1492314971[11])
664674 if (($size1492314971 == 12))
665675 then $acc121492314971
666676 else {
667677 let $acc131492314971 = PreviousRewardEntry($acc121492314971, $list1492314971[12])
668678 if (($size1492314971 == 13))
669679 then $acc131492314971
670680 else {
671681 let $acc141492314971 = PreviousRewardEntry($acc131492314971, $list1492314971[13])
672682 if (($size1492314971 == 14))
673683 then $acc141492314971
674684 else {
675685 let $acc151492314971 = PreviousRewardEntry($acc141492314971, $list1492314971[14])
676686 if (($size1492314971 == 15))
677687 then $acc151492314971
678688 else {
679689 let $acc161492314971 = PreviousRewardEntry($acc151492314971, $list1492314971[15])
680690 if (($size1492314971 == 16))
681691 then $acc161492314971
682692 else {
683693 let $acc171492314971 = PreviousRewardEntry($acc161492314971, $list1492314971[16])
684694 if (($size1492314971 == 17))
685695 then $acc171492314971
686696 else {
687697 let $acc181492314971 = PreviousRewardEntry($acc171492314971, $list1492314971[17])
688698 if (($size1492314971 == 18))
689699 then $acc181492314971
690700 else {
691701 let $acc191492314971 = PreviousRewardEntry($acc181492314971, $list1492314971[18])
692702 if (($size1492314971 == 19))
693703 then $acc191492314971
694704 else {
695705 let $acc201492314971 = PreviousRewardEntry($acc191492314971, $list1492314971[19])
696706 if (($size1492314971 == 20))
697707 then $acc201492314971
698708 else {
699709 let $acc211492314971 = PreviousRewardEntry($acc201492314971, $list1492314971[20])
700- throw("List size exceed 20")
710+ if (($size1492314971 == 21))
711+ then $acc211492314971
712+ else {
713+ let $acc221492314971 = PreviousRewardEntry($acc211492314971, $list1492314971[21])
714+ throw("List size exceed 21")
715+ }
701716 }
702717 }
703718 }
704719 }
705720 }
706721 }
707722 }
708723 }
709724 }
710725 }
711726 }
712727 }
713728 }
714729 }
715730 }
716731 }
717732 }
718733 }
719734 }
720735 }
721736 }
722737 }
723738 let currentRewardEntryNew = {
724739 let $list1500415050 = currentPools
725740 let $size1500415050 = size($list1500415050)
726741 let $acc01500415050 = nil
727742 if (($size1500415050 == 0))
728743 then $acc01500415050
729744 else {
730745 let $acc11500415050 = CurrentRewardEntry($acc01500415050, $list1500415050[0])
731746 if (($size1500415050 == 1))
732747 then $acc11500415050
733748 else {
734749 let $acc21500415050 = CurrentRewardEntry($acc11500415050, $list1500415050[1])
735750 if (($size1500415050 == 2))
736751 then $acc21500415050
737752 else {
738753 let $acc31500415050 = CurrentRewardEntry($acc21500415050, $list1500415050[2])
739754 if (($size1500415050 == 3))
740755 then $acc31500415050
741756 else {
742757 let $acc41500415050 = CurrentRewardEntry($acc31500415050, $list1500415050[3])
743758 if (($size1500415050 == 4))
744759 then $acc41500415050
745760 else {
746761 let $acc51500415050 = CurrentRewardEntry($acc41500415050, $list1500415050[4])
747762 if (($size1500415050 == 5))
748763 then $acc51500415050
749764 else {
750765 let $acc61500415050 = CurrentRewardEntry($acc51500415050, $list1500415050[5])
751766 if (($size1500415050 == 6))
752767 then $acc61500415050
753768 else {
754769 let $acc71500415050 = CurrentRewardEntry($acc61500415050, $list1500415050[6])
755770 if (($size1500415050 == 7))
756771 then $acc71500415050
757772 else {
758773 let $acc81500415050 = CurrentRewardEntry($acc71500415050, $list1500415050[7])
759774 if (($size1500415050 == 8))
760775 then $acc81500415050
761776 else {
762777 let $acc91500415050 = CurrentRewardEntry($acc81500415050, $list1500415050[8])
763778 if (($size1500415050 == 9))
764779 then $acc91500415050
765780 else {
766781 let $acc101500415050 = CurrentRewardEntry($acc91500415050, $list1500415050[9])
767782 if (($size1500415050 == 10))
768783 then $acc101500415050
769784 else {
770785 let $acc111500415050 = CurrentRewardEntry($acc101500415050, $list1500415050[10])
771786 if (($size1500415050 == 11))
772787 then $acc111500415050
773788 else {
774789 let $acc121500415050 = CurrentRewardEntry($acc111500415050, $list1500415050[11])
775790 if (($size1500415050 == 12))
776791 then $acc121500415050
777792 else {
778793 let $acc131500415050 = CurrentRewardEntry($acc121500415050, $list1500415050[12])
779794 if (($size1500415050 == 13))
780795 then $acc131500415050
781796 else {
782797 let $acc141500415050 = CurrentRewardEntry($acc131500415050, $list1500415050[13])
783798 if (($size1500415050 == 14))
784799 then $acc141500415050
785800 else {
786801 let $acc151500415050 = CurrentRewardEntry($acc141500415050, $list1500415050[14])
787802 if (($size1500415050 == 15))
788803 then $acc151500415050
789804 else {
790805 let $acc161500415050 = CurrentRewardEntry($acc151500415050, $list1500415050[15])
791806 if (($size1500415050 == 16))
792807 then $acc161500415050
793808 else {
794809 let $acc171500415050 = CurrentRewardEntry($acc161500415050, $list1500415050[16])
795810 if (($size1500415050 == 17))
796811 then $acc171500415050
797812 else {
798813 let $acc181500415050 = CurrentRewardEntry($acc171500415050, $list1500415050[17])
799814 if (($size1500415050 == 18))
800815 then $acc181500415050
801816 else {
802817 let $acc191500415050 = CurrentRewardEntry($acc181500415050, $list1500415050[18])
803818 if (($size1500415050 == 19))
804819 then $acc191500415050
805820 else {
806821 let $acc201500415050 = CurrentRewardEntry($acc191500415050, $list1500415050[19])
807822 if (($size1500415050 == 20))
808823 then $acc201500415050
809824 else {
810825 let $acc211500415050 = CurrentRewardEntry($acc201500415050, $list1500415050[20])
811- throw("List size exceed 20")
826+ if (($size1500415050 == 21))
827+ then $acc211500415050
828+ else {
829+ let $acc221500415050 = CurrentRewardEntry($acc211500415050, $list1500415050[21])
830+ throw("List size exceed 21")
831+ }
812832 }
813833 }
814834 }
815835 }
816836 }
817837 }
818838 }
819839 }
820840 }
821841 }
822842 }
823843 }
824844 }
825845 }
826846 }
827847 }
828848 }
829849 }
830850 }
831851 }
832852 }
833853 }
834854 ((previousRewardEntryNew ++ currentRewardEntryNew) ++ [IntegerEntry(keyRewardUpdateHeight, rewardUpdateHeight)])
835855 }
836856 }
837857
838858
839859
840860 @Callable(i)
841861 func shutdown () = if (!(isActive))
842862 then throw(("DApp is already suspended. Cause: " + valueOrElse(getString(this, keyCause), "the cause wasn't specified")))
843863 else if (!(containsElement([adminPubKey1, adminPubKey2, adminPubKey3, adminPubKeyStartStop], i.callerPublicKey)))
844864 then throw("Only admin can call this function")
845865 else suspend("Paused by admin")
846866
847867
848868
849869 @Callable(i)
850870 func activate () = if (isActive)
851871 then throw("DApp is already active")
852872 else if (!(containsElement([adminPubKey1, adminPubKey2, adminPubKey3, adminPubKeyStartStop], i.callerPublicKey)))
853873 then throw("Only admin can call this function")
854874 else [BooleanEntry(keyActive, true), DeleteEntry(keyCause)]
855875
856876
857877 @Verifier(tx)
858878 func verify () = {
859879 let adminPubKey1Signed = if (sigVerify(tx.bodyBytes, tx.proofs[0], adminPubKey1))
860880 then 1
861881 else 0
862882 let adminPubKey2Signed = if (sigVerify(tx.bodyBytes, tx.proofs[1], adminPubKey2))
863883 then 1
864884 else 0
865885 let adminPubKey3Signed = if (sigVerify(tx.bodyBytes, tx.proofs[2], adminPubKey3))
866886 then 1
867887 else 0
868888 (((adminPubKey1Signed + adminPubKey2Signed) + adminPubKey3Signed) >= 2)
869889 }
870890

github/deemru/w8io/786bc32 
124.61 ms