tx · AbUKsaoRqwiCac6wPsLBq3LraCVShQSW3vXMehpsz2Jj

3N5C2THWC3XfNzmC15YBeTBLamjhhCUdeeo:  -0.01400000 Waves

2021.12.14 18:07 [1834085] smart account 3N5C2THWC3XfNzmC15YBeTBLamjhhCUdeeo > SELF 0.00000000 Waves

{ "type": 13, "id": "AbUKsaoRqwiCac6wPsLBq3LraCVShQSW3vXMehpsz2Jj", "fee": 1400000, "feeAssetId": null, "timestamp": 1639494444784, "version": 1, "sender": "3N5C2THWC3XfNzmC15YBeTBLamjhhCUdeeo", "senderPublicKey": "BweqtcaAvG8gdYYQoaMsbUczGmHJAwWBShc9noVdvmWx", "proofs": [ "W32WpbCZuu73LJdZfGy4xKaaUp1V9nkL54NgQX4VGCwcqe38iQvfS7mYPDKUf2KmteK4D5qN8JXvB1Y9z4HAXSU" ], "script": "base64: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DWtleVByaWNlQXNzZXQAAAAAAgAAAA4lc19fcHJpY2VBc3NldAEAAAAMa2V5S0hpc3RvcmljAAAAAgAAAAFoAAAACXRpbWVzdGFtcAkABLkAAAACCQAETAAAAAICAAAAEyVzJXMlZCVkX19LX2hpc3RvcnkJAARMAAAAAgkAAaQAAAABBQAAAAFoCQAETAAAAAIJAAGkAAAAAQUAAAAJdGltZXN0YW1wBQAAAANuaWwFAAAAA1NFUAEAAAAQa2V5RmFjdG9yeUNvbmZpZwAAAAACAAAAESVzX19mYWN0b3J5Q29uZmlnAQAAAA1rZXlNYXRjaGVyUHViAAAAAAIAAAAYJXMlc19fbWF0Y2hlcl9fcHVibGljS2V5AQAAAClrZXlNYXBwaW5nUG9vbENvbnRyYWN0QWRkcmVzc1RvUG9vbEFzc2V0cwAAAAEAAAATcG9vbENvbnRyYWN0QWRkcmVzcwkAASwAAAACCQABLAAAAAICAAAACCVzJXMlc19fBQAAABNwb29sQ29udHJhY3RBZGRyZXNzAgAAACBfX21hcHBpbmdzX19wb29sQ29udHJhY3QyTHBBc3NldAEAAAANa2V5UG9vbENvbmZpZwAAAAIAAAAJaUFtdEFzc2V0AAAAC2lQcmljZUFzc2V0CQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACCVkJWQlc19fBQAAAAlpQW10QXNzZXQCAAAAAl9fBQAAAAtpUHJpY2VBc3NldAIAAAAIX19jb25maWcBAAAAH2tleU1hcHBpbmdzQmFzZUFzc2V0MmludGVybmFsSWQAAAABAAAADGJhc2VBc3NldFN0cgkAASwAAAACAgAAACglcyVzJXNfX21hcHBpbmdzX19iYXNlQXNzZXQyaW50ZXJuYWxJZF9fBQAAAAxiYXNlQXNzZXRTdHIBAAAAE2tleUFsbFBvb2xzU2h1dGRvd24AAAAAAgAAAAwlc19fc2h1dGRvd24BAAAADWtleVBvb2xXZWlnaHQAAAABAAAAD2NvbnRyYWN0QWRkcmVzcwkAASwAAAACAgAAABIlcyVzX19wb29sV2VpZ2h0X18FAAAAD2NvbnRyYWN0QWRkcmVzcwEAAAAPdGhyb3dPcmRlckVycm9yAAAAAwAAAApvcmRlclZhbGlkAAAAC3NlbmRlclZhbGlkAAAADG1hdGNoZXJWYWxpZAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAkb3JkZXIgdmFsaWRhdGlvbiBmYWlsZWQ6IG9yZGVyVmFsaWQ9CQABpQAAAAEFAAAACm9yZGVyVmFsaWQCAAAADSBzZW5kZXJWYWxpZD0JAAGlAAAAAQUAAAALc2VuZGVyVmFsaWQCAAAADiBtYXRjaGVyVmFsaWQ9CQABpQAAAAEFAAAADG1hdGNoZXJWYWxpZAEAAAAPZ2V0U3RyaW5nT3JGYWlsAAAAAgAAAAdhZGRyZXNzAAAAA2tleQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEHQAAAAIFAAAAB2FkZHJlc3MFAAAAA2tleQkABLkAAAACCQAETAAAAAICAAAACm1hbmRhdG9yeSAJAARMAAAAAgkABCUAAAABBQAAAAdhZGRyZXNzCQAETAAAAAICAAAAAS4JAARMAAAAAgUAAAADa2V5CQAETAAAAAICAAAADyBpcyBub3QgZGVmaW5lZAUAAAADbmlsAgAAAAABAAAADGdldEludE9yRmFpbAAAAAIAAAAHYWRkcmVzcwAAAANrZXkJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAAAdhZGRyZXNzBQAAAANrZXkJAAS5AAAAAgkABEwAAAACAgAAAAptYW5kYXRvcnkgCQAETAAAAAIJAAQlAAAAAQUAAAAHYWRkcmVzcwkABEwAAAACAgAAAAEuCQAETAAAAAIFAAAAA2tleQkABEwAAAACAgAAAA8gaXMgbm90IGRlZmluZWQFAAAAA25pbAIAAAAAAAAAAA9mYWN0b3J5Q29udHJhY3QJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACBQAAAAR0aGlzCQEAAAASa2V5RmFjdG9yeUNvbnRyYWN0AAAAAAEAAAAQaXNHbG9iYWxTaHV0ZG93bgAAAAAJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQbAAAAAgUAAAAPZmFjdG9yeUNvbnRyYWN0CQEAAAATa2V5QWxsUG9vbHNTaHV0ZG93bgAAAAAHAQAAABNnZXRNYXRjaGVyUHViT3JGYWlsAAAAAAkAAlkAAAABCQEAAAAPZ2V0U3RyaW5nT3JGYWlsAAAAAgUAAAAPZmFjdG9yeUNvbnRyYWN0CQEAAAANa2V5TWF0Y2hlclB1YgAAAAABAAAADWdldFBvb2xDb25maWcAAAAABAAAAAhhbXRBc3NldAkBAAAAD2dldFN0cmluZ09yRmFpbAAAAAIFAAAABHRoaXMJAQAAAAtrZXlBbXRBc3NldAAAAAAEAAAACnByaWNlQXNzZXQJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACBQAAAAR0aGlzCQEAAAANa2V5UHJpY2VBc3NldAAAAAAEAAAAC2lQcmljZUFzc2V0CQEAAAAMZ2V0SW50T3JGYWlsAAAAAgUAAAAPZmFjdG9yeUNvbnRyYWN0CQEAAAAfa2V5TWFwcGluZ3NCYXNlQXNzZXQyaW50ZXJuYWxJZAAAAAEFAAAACnByaWNlQXNzZXQEAAAACWlBbXRBc3NldAkBAAAADGdldEludE9yRmFpbAAAAAIFAAAAD2ZhY3RvcnlDb250cmFjdAkBAAAAH2tleU1hcHBpbmdzQmFzZUFzc2V0MmludGVybmFsSWQAAAABBQAAAAhhbXRBc3NldAkABLUAAAACCQEAAAAPZ2V0U3RyaW5nT3JGYWlsAAAAAgUAAAAPZmFjdG9yeUNvbnRyYWN0CQEAAAANa2V5UG9vbENvbmZpZwAAAAIJAAGkAAAAAQUAAAAJaUFtdEFzc2V0CQABpAAAAAEFAAAAC2lQcmljZUFzc2V0BQAAAANTRVABAAAAEGdldEZhY3RvcnlDb25maWcAAAAACQAEtQAAAAIJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACBQAAAA9mYWN0b3J5Q29udHJhY3QJAQAAABBrZXlGYWN0b3J5Q29uZmlnAAAAAAUAAAADU0VQAQAAABFkYXRhUHV0QWN0aW9uSW5mbwAAAAoAAAANaW5BbXRBc3NldEFtdAAAAA9pblByaWNlQXNzZXRBbXQAAAAIb3V0THBBbXQAAAAFcHJpY2UAAAAdc2xpcHBhZ2VUb2xlcmFuY2VQYXNzZWRCeVVzZXIAAAAVc2xpcHBhZ2VUb2xlcmFuY2VSZWFsAAAACHR4SGVpZ2h0AAAAC3R4VGltZXN0YW1wAAAAEnNsaXBhZ2VBbXRBc3NldEFtdAAAABRzbGlwYWdlUHJpY2VBc3NldEFtdAkABLkAAAACCQAETAAAAAICAAAAFCVkJWQlZCVkJWQlZCVkJWQlZCVkCQAETAAAAAIJAAGkAAAAAQUAAAANaW5BbXRBc3NldEFtdAkABEwAAAACCQABpAAAAAEFAAAAD2luUHJpY2VBc3NldEFtdAkABEwAAAACCQABpAAAAAEFAAAACG91dExwQW10CQAETAAAAAIJAAGkAAAAAQUAAAAFcHJpY2UJAARMAAAAAgkAAaQAAAABBQAAAB1zbGlwcGFnZVRvbGVyYW5jZVBhc3NlZEJ5VXNlcgkABEwAAAACCQABpAAAAAEFAAAAFXNsaXBwYWdlVG9sZXJhbmNlUmVhbAkABEwAAAACCQABpAAAAAEFAAAACHR4SGVpZ2h0CQAETAAAAAIJAAGkAAAAAQUAAAALdHhUaW1lc3RhbXAJAARMAAAAAgkAAaQAAAABBQAAABJzbGlwYWdlQW10QXNzZXRBbXQJAARMAAAAAgkAAaQAAAABBQAAABRzbGlwYWdlUHJpY2VBc3NldEFtdAUAAAADbmlsBQAAAANTRVABAAAAEWRhdGFHZXRBY3Rpb25JbmZvAAAABgAAAA5vdXRBbXRBc3NldEFtdAAAABBvdXRQcmljZUFzc2V0QW10AAAAB2luTHBBbXQAAAAFcHJpY2UAAAAIdHhIZWlnaHQAAAALdHhUaW1lc3RhbXAJAAS5AAAAAgkABEwAAAACAgAAAAwlZCVkJWQlZCVkJWQJAARMAAAAAgkAAaQAAAABBQAAAA5vdXRBbXRBc3NldEFtdAkABEwAAAACCQABpAAAAAEFAAAAEG91dFByaWNlQXNzZXRBbXQJAARMAAAAAgkAAaQAAAABBQAAAAdpbkxwQW10CQAETAAAAAIJAAGkAAAAAQUAAAAFcHJpY2UJAARMAAAAAgkAAaQAAAABBQAAAAh0eEhlaWdodAkABEwAAAACCQABpAAAAAEFAAAAC3R4VGltZXN0YW1wBQAAAANuaWwFAAAAA1NFUAEAAAANZ2V0QWNjQmFsYW5jZQAAAAEAAAAHYXNzZXRJZAMJAAAAAAAAAgUAAAAHYXNzZXRJZAIAAAAFV0FWRVMICQAD7wAAAAEFAAAABHRoaXMAAAAJYXZhaWxhYmxlCQAD8AAAAAIFAAAABHRoaXMJAAJZAAAAAQUAAAAHYXNzZXRJZAEAAAAPY2FsY1ByaWNlQmlnSW50AAAAAgAAAAhwckFtdFgxOAAAAAhhbUFtdFgxOAkAATwAAAADBQAAAAhwckFtdFgxOAUAAAAHc2NhbGUxOAUAAAAIYW1BbXRYMTgBAAAAEHByaXZhdGVDYWxjUHJpY2UAAAAEAAAACmFtQXNzZXREY20AAAAKcHJBc3NldERjbQAAAAVhbUFtdAAAAAVwckFtdAQAAAAOYW10QXNzZXRBbXRYMTgJAQAAAAV0b1gxOAAAAAIFAAAABWFtQW10BQAAAAphbUFzc2V0RGNtBAAAABBwcmljZUFzc2V0QW10WDE4CQEAAAAFdG9YMTgAAAACBQAAAAVwckFtdAUAAAAKcHJBc3NldERjbQkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIFAAAAEHByaWNlQXNzZXRBbXRYMTgFAAAADmFtdEFzc2V0QW10WDE4AQAAAApjYWxjUHJpY2VzAAAAAwAAAAVhbUFtdAAAAAVwckFtdAAAAAVscEFtdAQAAAADY2ZnCQEAAAANZ2V0UG9vbENvbmZpZwAAAAAEAAAAC2FtdEFzc2V0RGNtCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAAA5pZHhBbXRBc3NldERjbQQAAAANcHJpY2VBc3NldERjbQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAA2NmZwUAAAAQaWR4UHJpY2VBc3NldERjbQQAAAAIcHJpY2VYMTgJAQAAABBwcml2YXRlQ2FsY1ByaWNlAAAABAUAAAALYW10QXNzZXREY20FAAAADXByaWNlQXNzZXREY20FAAAABWFtQW10BQAAAAVwckFtdAQAAAAIYW1BbXRYMTgJAQAAAAV0b1gxOAAAAAIFAAAABWFtQW10BQAAAAthbXRBc3NldERjbQQAAAAIcHJBbXRYMTgJAQAAAAV0b1gxOAAAAAIFAAAABXByQW10BQAAAA1wcmljZUFzc2V0RGNtBAAAAAhscEFtdFgxOAkBAAAABXRvWDE4AAAAAgUAAAAFbHBBbXQFAAAABnNjYWxlOAQAAAATbHBQcmljZUluQW1Bc3NldFgxOAkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIFAAAACGFtQW10WDE4BQAAAAhscEFtdFgxOAQAAAATbHBQcmljZUluUHJBc3NldFgxOAkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIFAAAACHByQW10WDE4BQAAAAhscEFtdFgxOAkABEwAAAACBQAAAAhwcmljZVgxOAkABEwAAAACBQAAABNscFByaWNlSW5BbUFzc2V0WDE4CQAETAAAAAIFAAAAE2xwUHJpY2VJblByQXNzZXRYMTgFAAAAA25pbAEAAAAPY2FsY3VsYXRlUHJpY2VzAAAAAwAAAAVhbUFtdAAAAAVwckFtdAAAAAVscEFtdAQAAAAGcHJpY2VzCQEAAAAKY2FsY1ByaWNlcwAAAAMFAAAABWFtQW10BQAAAAVwckFtdAUAAAAFbHBBbXQJAARMAAAAAgkBAAAAB2Zyb21YMTgAAAACCQABkQAAAAIFAAAABnByaWNlcwAAAAAAAAAAAAUAAAAGc2NhbGU4CQAETAAAAAIJAQAAAAdmcm9tWDE4AAAAAgkAAZEAAAACBQAAAAZwcmljZXMAAAAAAAAAAAEFAAAABnNjYWxlOAkABEwAAAACCQEAAAAHZnJvbVgxOAAAAAIJAAGRAAAAAgUAAAAGcHJpY2VzAAAAAAAAAAACBQAAAAZzY2FsZTgFAAAAA25pbAEAAAAUZXN0aW1hdGVHZXRPcGVyYXRpb24AAAAEAAAABnR4SWQ1OAAAAApwbXRBc3NldElkAAAACHBtdExwQW10AAAAC3VzZXJBZGRyZXNzBAAAAANjZmcJAQAAAA1nZXRQb29sQ29uZmlnAAAAAAQAAAAJbHBBc3NldElkCQABkQAAAAIFAAAAA2NmZwUAAAAQaWR4UG9vbExQQXNzZXRJZAQAAAAJYW1Bc3NldElkCQABkQAAAAIFAAAAA2NmZwUAAAANaWR4QW10QXNzZXRJZAQAAAAJcHJBc3NldElkCQABkQAAAAIFAAAAA2NmZwUAAAAPaWR4UHJpY2VBc3NldElkBAAAAAphbUFzc2V0RGNtCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAAA5pZHhBbXRBc3NldERjbQQAAAAKcHJBc3NldERjbQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAA2NmZwUAAAAQaWR4UHJpY2VBc3NldERjbQQAAAAKcG9vbFN0YXR1cwkAAZEAAAACBQAAAANjZmcFAAAADWlkeFBvb2xTdGF0dXMEAAAACmxwRW1pc3Npb24ICQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAPsAAAAAQkAAlkAAAABBQAAAAlscEFzc2V0SWQJAAEsAAAAAgkAASwAAAACAgAAAAZBc3NldCAFAAAACWxwQXNzZXRJZAIAAAAOIGRvZXNuJ3QgZXhpc3QAAAAIcXVhbnRpdHkDCQEAAAACIT0AAAACBQAAAAlscEFzc2V0SWQFAAAACnBtdEFzc2V0SWQJAAACAAAAAQIAAAAVSW52YWxpZCBhc3NldCBwYXNzZWQuBAAAAAlhbUJhbGFuY2UJAQAAAA1nZXRBY2NCYWxhbmNlAAAAAQUAAAAJYW1Bc3NldElkBAAAAAxhbUJhbGFuY2VYMTgJAQAAAAV0b1gxOAAAAAIFAAAACWFtQmFsYW5jZQUAAAAKYW1Bc3NldERjbQQAAAAJcHJCYWxhbmNlCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAACXByQXNzZXRJZAQAAAAMcHJCYWxhbmNlWDE4CQEAAAAFdG9YMTgAAAACBQAAAAlwckJhbGFuY2UFAAAACnByQXNzZXREY20EAAAAC2N1clByaWNlWDE4CQEAAAAPY2FsY1ByaWNlQmlnSW50AAAAAgUAAAAMcHJCYWxhbmNlWDE4BQAAAAxhbUJhbGFuY2VYMTgEAAAACGN1clByaWNlCQEAAAAHZnJvbVgxOAAAAAIFAAAAC2N1clByaWNlWDE4BQAAAAZzY2FsZTgEAAAAC3BtdExwQW10WDE4CQEAAAAFdG9YMTgAAAACBQAAAAhwbXRMcEFtdAUAAAAGc2NhbGU4BAAAAA1scEVtaXNzaW9uWDE4CQEAAAAFdG9YMTgAAAACBQAAAApscEVtaXNzaW9uBQAAAAZzY2FsZTgEAAAAC291dEFtQW10WDE4CQABPAAAAAMFAAAADGFtQmFsYW5jZVgxOAUAAAALcG10THBBbXRYMTgFAAAADWxwRW1pc3Npb25YMTgEAAAAC291dFByQW10WDE4CQABPAAAAAMFAAAADHByQmFsYW5jZVgxOAUAAAALcG10THBBbXRYMTgFAAAADWxwRW1pc3Npb25YMTgEAAAACG91dEFtQW10CQEAAAAHZnJvbVgxOAAAAAIFAAAAC291dEFtQW10WDE4BQAAAAphbUFzc2V0RGNtBAAAAAhvdXRQckFtdAkBAAAAB2Zyb21YMTgAAAACBQAAAAtvdXRQckFtdFgxOAUAAAAKcHJBc3NldERjbQQAAAAFc3RhdGUDCQAAAAAAAAIFAAAABnR4SWQ1OAIAAAAABQAAAANuaWwJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAALdXNlckFkZHJlc3MFAAAACG91dEFtQW10AwkAAAAAAAACBQAAAAlhbUFzc2V0SWQCAAAABVdBVkVTBQAAAAR1bml0CQACWQAAAAEFAAAACWFtQXNzZXRJZAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAAt1c2VyQWRkcmVzcwUAAAAIb3V0UHJBbXQDCQAAAAAAAAIFAAAACXByQXNzZXRJZAIAAAAFV0FWRVMFAAAABHVuaXQJAAJZAAAAAQUAAAAJcHJBc3NldElkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABJrZXlHZXRBY3Rpb25CeVVzZXIAAAACCQAEJQAAAAEFAAAAC3VzZXJBZGRyZXNzBQAAAAZ0eElkNTgJAQAAABFkYXRhR2V0QWN0aW9uSW5mbwAAAAYFAAAACG91dEFtQW10BQAAAAhvdXRQckFtdAUAAAAIcG10THBBbXQFAAAACGN1clByaWNlBQAAAAZoZWlnaHQIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAMa2V5UHJpY2VMYXN0AAAAAAUAAAAIY3VyUHJpY2UJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAA9rZXlQcmljZUhpc3RvcnkAAAACBQAAAAZoZWlnaHQIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wBQAAAAhjdXJQcmljZQUAAAADbmlsCQAFHAAAAAoFAAAACG91dEFtQW10BQAAAAhvdXRQckFtdAUAAAAJYW1Bc3NldElkBQAAAAlwckFzc2V0SWQFAAAACWFtQmFsYW5jZQUAAAAJcHJCYWxhbmNlBQAAAApscEVtaXNzaW9uBQAAAAtjdXJQcmljZVgxOAUAAAAKcG9vbFN0YXR1cwUAAAAFc3RhdGUBAAAAFGVzdGltYXRlUHV0T3BlcmF0aW9uAAAACQAAAAZ0eElkNTgAAAARc2xpcHBhZ2VUb2xlcmFuY2UAAAAMaW5BbUFzc2V0QW10AAAAC2luQW1Bc3NldElkAAAADGluUHJBc3NldEFtdAAAAAtpblByQXNzZXRJZAAAAAt1c2VyQWRkcmVzcwAAAAppc0V2YWx1YXRlAAAABmVtaXRMcAQAAAADY2ZnCQEAAAANZ2V0UG9vbENvbmZpZwAAAAAEAAAACWxwQXNzZXRJZAkAAlkAAAABCQABkQAAAAIFAAAAA2NmZwUAAAAQaWR4UG9vbExQQXNzZXRJZAQAAAAMYW1Bc3NldElkU3RyCQABkQAAAAIFAAAAA2NmZwUAAAANaWR4QW10QXNzZXRJZAQAAAAMcHJBc3NldElkU3RyCQABkQAAAAIFAAAAA2NmZwUAAAAPaWR4UHJpY2VBc3NldElkBAAAAAtpQW10QXNzZXRJZAkAAZEAAAACBQAAAANjZmcFAAAADmlkeElBbXRBc3NldElkBAAAAA1pUHJpY2VBc3NldElkCQABkQAAAAIFAAAAA2NmZwUAAAAQaWR4SVByaWNlQXNzZXRJZAQAAAALYW10QXNzZXREY20JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAANjZmcFAAAADmlkeEFtdEFzc2V0RGNtBAAAAA1wcmljZUFzc2V0RGNtCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAABBpZHhQcmljZUFzc2V0RGNtBAAAAApwb29sU3RhdHVzCQABkQAAAAIFAAAAA2NmZwUAAAANaWR4UG9vbFN0YXR1cwQAAAAKbHBFbWlzc2lvbggJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkAA+wAAAABBQAAAAlscEFzc2V0SWQJAAEsAAAAAgkAASwAAAACAgAAAAZBc3NldCAJAAJYAAAAAQUAAAAJbHBBc3NldElkAgAAAA4gZG9lc24ndCBleGlzdAAAAAhxdWFudGl0eQQAAAAOaW5BbUFzc2V0SWRTdHIJAAJYAAAAAQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgUAAAALaW5BbUFzc2V0SWQJAAJZAAAAAQIAAAAFV0FWRVMEAAAADmluUHJBc3NldElkU3RyCQACWAAAAAEJAQAAAAt2YWx1ZU9yRWxzZQAAAAIFAAAAC2luUHJBc3NldElkCQACWQAAAAECAAAABVdBVkVTAwMJAQAAAAIhPQAAAAIFAAAADGFtQXNzZXRJZFN0cgUAAAAOaW5BbUFzc2V0SWRTdHIGCQEAAAACIT0AAAACBQAAAAxwckFzc2V0SWRTdHIFAAAADmluUHJBc3NldElkU3RyCQAAAgAAAAECAAAAIkludmFsaWQgYW10IG9yIHByaWNlIGFzc2V0IHBhc3NlZC4EAAAACWFtQmFsYW5jZQMFAAAACmlzRXZhbHVhdGUJAQAAAA1nZXRBY2NCYWxhbmNlAAAAAQUAAAAMYW1Bc3NldElkU3RyCQAAZQAAAAIJAQAAAA1nZXRBY2NCYWxhbmNlAAAAAQUAAAAMYW1Bc3NldElkU3RyBQAAAAxpbkFtQXNzZXRBbXQEAAAACXByQmFsYW5jZQMFAAAACmlzRXZhbHVhdGUJAQAAAA1nZXRBY2NCYWxhbmNlAAAAAQUAAAAMcHJBc3NldElkU3RyCQAAZQAAAAIJAQAAAA1nZXRBY2NCYWxhbmNlAAAAAQUAAAAMcHJBc3NldElkU3RyBQAAAAxpblByQXNzZXRBbXQEAAAAD2luQW1Bc3NldEFtdFgxOAkBAAAABXRvWDE4AAAAAgUAAAAMaW5BbUFzc2V0QW10BQAAAAthbXRBc3NldERjbQQAAAAPaW5QckFzc2V0QW10WDE4CQEAAAAFdG9YMTgAAAACBQAAAAxpblByQXNzZXRBbXQFAAAADXByaWNlQXNzZXREY20EAAAADHVzZXJQcmljZVgxOAkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIFAAAAD2luUHJBc3NldEFtdFgxOAUAAAAPaW5BbUFzc2V0QW10WDE4BAAAAAxhbUJhbGFuY2VYMTgJAQAAAAV0b1gxOAAAAAIFAAAACWFtQmFsYW5jZQUAAAALYW10QXNzZXREY20EAAAADHByQmFsYW5jZVgxOAkBAAAABXRvWDE4AAAAAgUAAAAJcHJCYWxhbmNlBQAAAA1wcmljZUFzc2V0RGNtBAAAAANyZXMDCQAAAAAAAAIFAAAACmxwRW1pc3Npb24AAAAAAAAAAAAEAAAAC2N1clByaWNlWDE4BQAAAAp6ZXJvQmlnSW50BAAAAAtzbGlwcGFnZVgxOAUAAAAKemVyb0JpZ0ludAQAAAAIbHBBbXRYMTgJAAB2AAAABgkAATkAAAACBQAAAA9pbkFtQXNzZXRBbXRYMTgFAAAAD2luUHJBc3NldEFtdFgxOAAAAAAAAAAAAAkAATYAAAABAAAAAAAAAAAFAAAAAAAAAAABAAAAAAAAAAAABQAAAARET1dOCQAFFwAAAAUJAQAAAAdmcm9tWDE4AAAAAgUAAAAIbHBBbXRYMTgFAAAABnNjYWxlOAkBAAAAB2Zyb21YMTgAAAACBQAAAA9pbkFtQXNzZXRBbXRYMTgFAAAAC2FtdEFzc2V0RGNtCQEAAAAHZnJvbVgxOAAAAAIFAAAAD2luUHJBc3NldEFtdFgxOAUAAAANcHJpY2VBc3NldERjbQkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIJAAE3AAAAAgUAAAAMcHJCYWxhbmNlWDE4BQAAAA9pblByQXNzZXRBbXRYMTgJAAE3AAAAAgUAAAAMYW1CYWxhbmNlWDE4BQAAAA9pbkFtQXNzZXRBbXRYMTgFAAAAC3NsaXBwYWdlWDE4BAAAAAtjdXJQcmljZVgxOAkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIFAAAADHByQmFsYW5jZVgxOAUAAAAMYW1CYWxhbmNlWDE4BAAAAAtzbGlwcGFnZVgxOAkAATwAAAADCQEAAAADYWJzAAAAAQkAATgAAAACBQAAAAtjdXJQcmljZVgxOAUAAAAMdXNlclByaWNlWDE4BQAAAAdzY2FsZTE4BQAAAAtjdXJQcmljZVgxOAQAAAAUc2xpcHBhZ2VUb2xlcmFuY2VYMTgJAQAAAAV0b1gxOAAAAAIFAAAAEXNsaXBwYWdlVG9sZXJhbmNlBQAAAAZzY2FsZTgDAwkBAAAAAiE9AAAAAgUAAAALY3VyUHJpY2VYMTgFAAAACnplcm9CaWdJbnQJAAE/AAAAAgUAAAALc2xpcHBhZ2VYMTgFAAAAFHNsaXBwYWdlVG9sZXJhbmNlWDE4BwkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAA9QcmljZSBzbGlwcGFnZSAJAAGmAAAAAQUAAAALc2xpcHBhZ2VYMTgCAAAAHiBleGNlZWRlZCB0aGUgcGFzc2VkIGxpbWl0IG9mIAkAAaYAAAABBQAAABRzbGlwcGFnZVRvbGVyYW5jZVgxOAQAAAANbHBFbWlzc2lvblgxOAkBAAAABXRvWDE4AAAAAgUAAAAKbHBFbWlzc2lvbgUAAAAGc2NhbGU4BAAAAApwclZpYUFtWDE4CQABPAAAAAMFAAAAD2luQW1Bc3NldEFtdFgxOAUAAAALY3VyUHJpY2VYMTgFAAAAB3NjYWxlMTgEAAAACmFtVmlhUHJYMTgJAAE8AAAAAwUAAAAPaW5QckFzc2V0QW10WDE4BQAAAAdzY2FsZTE4BQAAAAtjdXJQcmljZVgxOAQAAAAMZXhwZWN0ZWRBbXRzAwkAAT8AAAACBQAAAApwclZpYUFtWDE4BQAAAA9pblByQXNzZXRBbXRYMTgJAAUUAAAAAgUAAAAKYW1WaWFQclgxOAUAAAAPaW5QckFzc2V0QW10WDE4CQAFFAAAAAIFAAAAD2luQW1Bc3NldEFtdFgxOAUAAAAKcHJWaWFBbVgxOAQAAAARZXhwQW10QXNzZXRBbXRYMTgIBQAAAAxleHBlY3RlZEFtdHMAAAACXzEEAAAAE2V4cFByaWNlQXNzZXRBbXRYMTgIBQAAAAxleHBlY3RlZEFtdHMAAAACXzIEAAAACGxwQW10WDE4CQABPAAAAAMFAAAADWxwRW1pc3Npb25YMTgFAAAAE2V4cFByaWNlQXNzZXRBbXRYMTgFAAAADHByQmFsYW5jZVgxOAkABRcAAAAFCQEAAAAHZnJvbVgxOAAAAAIFAAAACGxwQW10WDE4BQAAAAZzY2FsZTgJAQAAAAdmcm9tWDE4AAAAAgUAAAARZXhwQW10QXNzZXRBbXRYMTgFAAAAC2FtdEFzc2V0RGNtCQEAAAAHZnJvbVgxOAAAAAIFAAAAE2V4cFByaWNlQXNzZXRBbXRYMTgFAAAADXByaWNlQXNzZXREY20FAAAAC2N1clByaWNlWDE4BQAAAAtzbGlwcGFnZVgxOAQAAAAJY2FsY0xwQW10CAUAAAADcmVzAAAAAl8xBAAAAA5jYWxjQW1Bc3NldFBtdAgFAAAAA3JlcwAAAAJfMgQAAAAOY2FsY1ByQXNzZXRQbXQIBQAAAANyZXMAAAACXzMEAAAACGN1clByaWNlCQEAAAAHZnJvbVgxOAAAAAIIBQAAAANyZXMAAAACXzQFAAAABnNjYWxlOAQAAAAMc2xpcHBhZ2VDYWxjCQEAAAAHZnJvbVgxOAAAAAIIBQAAAANyZXMAAAACXzUFAAAABnNjYWxlOAMJAABnAAAAAgAAAAAAAAAAAAUAAAAJY2FsY0xwQW10CQAAAgAAAAECAAAANkludmFsaWQgY2FsY3VsYXRpb25zLiBMUCBjYWxjdWxhdGVkIGlzIGxlc3MgdGhhbiB6ZXJvLgQAAAAJZW1pdExwQW10AwkBAAAAASEAAAABBQAAAAZlbWl0THAAAAAAAAAAAAAFAAAACWNhbGNMcEFtdAQAAAAGYW1EaWZmCQAAZQAAAAIFAAAADGluQW1Bc3NldEFtdAUAAAAOY2FsY0FtQXNzZXRQbXQEAAAABnByRGlmZgkAAGUAAAACBQAAAAxpblByQXNzZXRBbXQFAAAADmNhbGNQckFzc2V0UG10BAAAAAtjb21tb25TdGF0ZQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAADGtleVByaWNlTGFzdAAAAAAFAAAACGN1clByaWNlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAPa2V5UHJpY2VIaXN0b3J5AAAAAgUAAAAGaGVpZ2h0CAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAUAAAAIY3VyUHJpY2UJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAEmtleVB1dEFjdGlvbkJ5VXNlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAAZ0eElkNTgJAQAAABFkYXRhUHV0QWN0aW9uSW5mbwAAAAoFAAAADmNhbGNBbUFzc2V0UG10BQAAAA5jYWxjUHJBc3NldFBtdAUAAAAJZW1pdExwQW10BQAAAAhjdXJQcmljZQUAAAARc2xpcHBhZ2VUb2xlcmFuY2UFAAAADHNsaXBwYWdlQ2FsYwUAAAAGaGVpZ2h0CAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAUAAAAGYW1EaWZmBQAAAAZwckRpZmYFAAAAA25pbAkABR8AAAANBQAAAAljYWxjTHBBbXQFAAAACWVtaXRMcEFtdAUAAAAIY3VyUHJpY2UFAAAACWFtQmFsYW5jZQUAAAAJcHJCYWxhbmNlBQAAAApscEVtaXNzaW9uBQAAAAlscEFzc2V0SWQFAAAACnBvb2xTdGF0dXMFAAAAC2NvbW1vblN0YXRlBQAAAAZhbURpZmYFAAAABnByRGlmZgUAAAALaW5BbUFzc2V0SWQFAAAAC2luUHJBc3NldElkAQAAABt2YWxpZGF0ZU1hdGNoZXJPcmRlckFsbG93ZWQAAAABAAAABW9yZGVyBAAAAANjZmcJAQAAAA1nZXRQb29sQ29uZmlnAAAAAAQAAAAKYW10QXNzZXRJZAkAAZEAAAACBQAAAANjZmcFAAAADWlkeEFtdEFzc2V0SWQEAAAADHByaWNlQXNzZXRJZAkAAZEAAAACBQAAAANjZmcFAAAAD2lkeFByaWNlQXNzZXRJZAQAAAAKcG9vbFN0YXR1cwkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAA2NmZwUAAAANaWR4UG9vbFN0YXR1cwQAAAALYW10QXNzZXREY20JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAANjZmcFAAAADmlkeEFtdEFzc2V0RGNtBAAAAA1wcmljZUFzc2V0RGNtCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAABBpZHhQcmljZUFzc2V0RGNtBAAAABJhY2NBbXRBc3NldEJhbGFuY2UJAQAAAA1nZXRBY2NCYWxhbmNlAAAAAQUAAAAKYW10QXNzZXRJZAQAAAAUYWNjUHJpY2VBc3NldEJhbGFuY2UJAQAAAA1nZXRBY2NCYWxhbmNlAAAAAQUAAAAMcHJpY2VBc3NldElkBAAAAAtjdXJQcmljZVgxOAMJAAAAAAAAAggFAAAABW9yZGVyAAAACW9yZGVyVHlwZQUAAAADQnV5CQEAAAAQcHJpdmF0ZUNhbGNQcmljZQAAAAQFAAAAC2FtdEFzc2V0RGNtBQAAAA1wcmljZUFzc2V0RGNtCQAAZAAAAAIFAAAAEmFjY0FtdEFzc2V0QmFsYW5jZQgFAAAABW9yZGVyAAAABmFtb3VudAUAAAAUYWNjUHJpY2VBc3NldEJhbGFuY2UJAQAAABBwcml2YXRlQ2FsY1ByaWNlAAAABAUAAAALYW10QXNzZXREY20FAAAADXByaWNlQXNzZXREY20JAABlAAAAAgUAAAASYWNjQW10QXNzZXRCYWxhbmNlCAUAAAAFb3JkZXIAAAAGYW1vdW50BQAAABRhY2NQcmljZUFzc2V0QmFsYW5jZQQAAAAIY3VyUHJpY2UJAQAAAAdmcm9tWDE4AAAAAgUAAAALY3VyUHJpY2VYMTgFAAAABnNjYWxlOAMDAwkBAAAAEGlzR2xvYmFsU2h1dGRvd24AAAAABgkAAAAAAAACBQAAAApwb29sU3RhdHVzBQAAABNQb29sTWF0Y2hlckRpc2FibGVkBgkAAAAAAAACBQAAAApwb29sU3RhdHVzBQAAAAxQb29sU2h1dGRvd24JAAACAAAAAQIAAAAcRXhjaGFuZ2Ugb3BlcmF0aW9ucyBkaXNhYmxlZAQAAAANb3JkZXJBbXRBc3NldAgIBQAAAAVvcmRlcgAAAAlhc3NldFBhaXIAAAALYW1vdW50QXNzZXQEAAAAEG9yZGVyQW10QXNzZXRTdHIDCQAAAAAAAAIFAAAADW9yZGVyQW10QXNzZXQFAAAABHVuaXQCAAAABVdBVkVTCQACWAAAAAEJAQAAAAV2YWx1ZQAAAAEFAAAADW9yZGVyQW10QXNzZXQEAAAAD29yZGVyUHJpY2VBc3NldAgIBQAAAAVvcmRlcgAAAAlhc3NldFBhaXIAAAAKcHJpY2VBc3NldAQAAAASb3JkZXJQcmljZUFzc2V0U3RyAwkAAAAAAAACBQAAAA9vcmRlclByaWNlQXNzZXQFAAAABHVuaXQCAAAABVdBVkVTCQACWAAAAAEJAQAAAAV2YWx1ZQAAAAEFAAAAD29yZGVyUHJpY2VBc3NldAMDCQEAAAACIT0AAAACBQAAABBvcmRlckFtdEFzc2V0U3RyBQAAAAphbXRBc3NldElkBgkBAAAAAiE9AAAAAgUAAAASb3JkZXJQcmljZUFzc2V0U3RyBQAAAAxwcmljZUFzc2V0SWQJAAACAAAAAQIAAAATV3Jvbmcgb3JkZXIgYXNzZXRzLgQAAAAKb3JkZXJQcmljZQgFAAAABW9yZGVyAAAABXByaWNlBAAAAAhwcmljZURjbQkAAGsAAAADBQAAAAZzY2FsZTgFAAAADXByaWNlQXNzZXRE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Y3RvcnlDb250cmFjdAAAABBtYW5hZ2VyUHVibGljS2V5AwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzCQAAAgAAAAECAAAAEnBlcm1pc3Npb25zIGRlbmllZAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAASa2V5RmFjdG9yeUNvbnRyYWN0AAAAAAUAAAAPZmFjdG9yeUNvbnRyYWN0CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABNrZXlNYW5hZ2VyUHVibGljS2V5AAAAAAUAAAAQbWFuYWdlclB1YmxpY0tleQUAAAADbmlsAAAAAWkBAAAAA3B1dAAAAAIAAAARc2xpcHBhZ2VUb2xlcmFuY2UAAAAPc2hvdWxkQXV0b1N0YWtlBAAAAApmYWN0b3J5Q2ZnCQEAAAAQZ2V0RmFjdG9yeUNvbmZpZwAAAAAEAAAAD3N0YWtpbmdDb250cmFjdAkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEJgAAAAEJAAGRAAAAAgUAAAAKZmFjdG9yeUNmZwUAAAAZaWR4RmFjdG9yeVN0YWtpbmdDb250cmFjdAIAAAAhRXJyb3IuIEluY29ycmVjdCBzdGFraW5nIGFkZHJlc3MuBAAAABBzbGlwcGFnZUNvbnRyYWN0CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQmAAAAAQkAAZEAAAACBQAAAApmYWN0b3J5Q2ZnBQAAABppZHhGYWN0b3J5U2xpcHBhZ2VDb250cmFjdAIAAAArRXJyb3IuIEluY29ycmVjdCBzbGlwcGFnZSBjb250cmFjdCBhZGRyZXNzLgMJAABmAAAAAgAAAAAAAAAAAAUAAAARc2xpcHBhZ2VUb2xlcmFuY2UJAAACAAAAAQIAAAAgSW52YWxpZCBzbGlwcGFnZVRvbGVyYW5jZSBwYXNzZWQEAAAABmVzdFB1dAkBAAAACWNvbW1vblB1dAAAAAMFAAAAAWkFAAAAEXNsaXBwYWdlVG9sZXJhbmNlBgQAAAAJZW1pdExwQW10CAUAAAAGZXN0UHV0AAAAAl8yBAAAAAlscEFzc2V0SWQIBQAAAAZlc3RQdXQAAAACXzcEAAAABXN0YXRlCAUAAAAGZXN0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AAEsAAAAAgIAAAAsR2V0IG9wZXJhdGlvbiBpcyBibG9ja2VkIGJ5IGFkbWluLiBTdGF0dXMgPSAJAAGkAAAAAQUAAAAKcG9vbFN0YXR1cwYDCQAAAAAAAAIFAAAAD2NoZWNrUG9vbFN0YXR1cwUAAAAPY2hlY2tQb29sU3RhdHVzBAAAABRidXJuTFBBc3NldE9uRmFjdG9yeQkAA/wAAAAEBQAAAA9mYWN0b3J5Q29udHJhY3QCAAAABGJ1cm4JAARMAAAAAgUAAAAGYW1vdW50BQAAAANuaWwJAARMAAAAAgkBAAAAD0F0dGFjaGVkUGF5bWVudAAAAAIFAAAACWxwQXNzZXRJZAUAAAAGYW1vdW50BQAAAANuaWwDCQAAAAAAAAIFAAAAFGJ1cm5MUEFzc2V0T25GYWN0b3J5BQAAABRidXJuTFBBc3NldE9uRmFjdG9yeQUAAAAFc3RhdGUJAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAAAAAWkBAAAACGFjdGl2YXRlAAAAAgAAAAthbXRBc3NldFN0cgAAAA1wcmljZUFzc2V0U3RyAwkBAAAAAiE9AAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIJAAQlAAAAAQUAAAAPZmFjdG9yeUNvbnRyYWN0CQAAAgAAAAECAAAAEnBlcm1pc3Npb25zIGRlbmllZAkABRQAAAACCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAtrZXlBbXRBc3NldAAAAAAFAAAAC2FtdEFzc2V0U3RyCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAA1rZXlQcmljZUFzc2V0AAAAAAUAAAANcHJpY2VBc3NldFN0cgUAAAADbmlsAgAAAAdzdWNjZXNzAAAAAWkBAAAAHGdldFBvb2xDb25maWdXcmFwcGVyUkVBRE9OTFkAAAAACQAFFAAAAAIFAAAAA25pbAkBAAAADWdldFBvb2xDb25maWcAAAAAAAAAAWkBAAAAHGdldEFjY0JhbGFuY2VXcmFwcGVyUkVBRE9OTFkAAAABAAAAB2Fzc2V0SWQJAAUUAAAAAgUAAAADbmlsCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAAB2Fzc2V0SWQAAAABaQEAAAAZY2FsY1ByaWNlc1dyYXBwZXJSRUFET05MWQAAAAMAAAAFYW1BbXQAAAAFcHJBbXQAAAAFbHBBbXQEAAAABnByaWNlcwkBAAAACmNhbGNQcmljZXMAAAADBQAAAAVhbUFtdAUAAAAFcHJBbXQFAAAABWxwQW10CQAFFAAAAAIFAAAAA25pbAkABEwAAAACCQABpgAAAAEJAAGRAAAAAgUAAAAGcHJpY2VzAAAAAAAAAAAACQAETAAAAAIJAAGmAAAAAQkAAZEAAAACBQAAAAZwcmljZXMAAAAAAAAAAAEJAARMAAAAAgkAAaYAAAABCQABkQAAAAIFAAAABnByaWNlcwAAAAAAAAAAAgUAAAADbmlsAAAAAWkBAAAAFmZyb21YMThXcmFwcGVyUkVBRE9OTFkAAAACAAAAA3ZhbAAAAA9yZXN1bHRTY2FsZU11bHQJAAUUAAAAAgUAAAADbmlsCQEAAAAHZnJvbVgxOAAAAAIJAAGnAAAAAQUAAAADdmFsBQAAAA9yZXN1bHRTY2FsZU11bHQAAAABaQEAAAANc3RhdHNSRUFET05MWQAAAAAEAAAAA2NmZwkBAAAADWdldFBvb2xDb25maWcAAAAABAAAAAlscEFzc2V0SWQJAAJZAAAAAQkAAZEAAAACBQAAAANjZmcFAAAAEGlkeFBvb2xMUEFzc2V0SWQEAAAACmFtdEFzc2V0SWQJAAGRAAAAAgUAAAADY2ZnBQAAAA1pZHhBbXRBc3NldElkBAAAAAxwcmljZUFzc2V0SWQJAAGRAAAAAgUAAAADY2ZnBQAAAA9pZHhQcmljZUFzc2V0SWQEAAAAC2lBbXRBc3NldElkCQABkQAAAAIFAAAAA2NmZwUAAAAOaWR4SUFtdEFzc2V0SWQEAAAADWlQcmljZUFzc2V0SWQJAAGRAAAAAgUAAAADY2ZnBQAAABBpZHhJUHJpY2VBc3NldElkBAAAAAthbXRBc3NldERjbQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAA2NmZwUAAAAOaWR4QW10QXNzZXREY20EAAAADXByaWNlQXNzZXREY20JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAANjZmcFAAAAEGlkeFByaWNlQXNzZXREY20EAAAADXBvb2xMUEJhbGFuY2UICQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAPsAAAAAQUAAAAJbHBBc3NldElkCQABLAAAAAIJAAEsAAAAAgIAAAAGQXNzZXQgCQACWAAAAAEFAAAACWxwQXNzZXRJZAIAAAAOIGRvZXNuJ3QgZXhpc3QAAAAIcXVhbnRpdHkEAAAAEmFjY0FtdEFzc2V0QmFsYW5jZQkBAAAADWdldEFjY0JhbGFuY2UAAAABBQAAAAphbXRBc3NldElkBAAAABRhY2NQcmljZUFzc2V0QmFsYW5jZQkBAAAADWdldEFjY0JhbGFuY2UAAAABBQAAAAxwcmljZUFzc2V0SWQEAAAACnByaWNlc0xpc3QDCQAAAAAAAAIFAAAADXBvb2xMUEJhbGFuY2UAAAAAAAAAAAAJAARMAAAAAgUAAAAKemVyb0JpZ0ludAkABEwAAAACBQAAAAp6ZXJvQmlnSW50CQAETAAAAAIFAAAACnplcm9CaWdJbnQFAAAAA25pbAkBAAAACmNhbGNQcmljZXMAAAADBQAAABJhY2NBbXRBc3NldEJhbGFuY2UFAAAAFGFjY1ByaWNlQXNzZXRCYWxhbmNlBQAAAA1wb29sTFBCYWxhbmNlBAAAAAhjdXJQcmljZQAAAAAAAAAAAAQAAAAPbHBBbXRBc3NldFNoYXJlCQEAAAAHZnJvbVgxOAAAAAIJAAGRAAAAAgUAAAAKcHJpY2VzTGlzdAAAAAAAAAAAAQUAAAAGc2NhbGU4BAAAABFscFByaWNlQXNzZXRTaGFyZQkBAAAAB2Zyb21YMTgAAAACCQABkQAAAAIFAAAACnByaWNlc0xpc3QAAAAAAAAAAAIFAAAABnNjYWxlOAQAAAAKcG9vbFdlaWdodAkBAAAABXZhbHVlAAAAAQkABBoAAAACBQAAAA9mYWN0b3J5Q29udHJhY3QJAQAAAA1rZXlQb29sV2VpZ2h0AAAAAQkABCUAAAABBQAAAAR0aGlzCQAFFAAAAAIFAAAAA25pbAkABLkAAAACCQAETAAAAAICAAAADiVkJWQlZCVkJWQlZCVkCQAETAAAAAIJAAGkAAAAAQUAAAASYWNjQW10QXNzZXRCYWxhbmNlCQAETAAAAAIJAAGkAAAAAQUAAAAUYWNjUHJpY2VBc3NldEJhbGFuY2UJAARMAAAAAgkAAaQAAAABBQAAAA1wb29sTFBCYWxhbmNlCQAETAAAAAIJAAGkAAAAAQUAAAAIY3VyUHJpY2UJAARMAAAAAgkAAaQAAAABBQAAAA9scEFtdEFzc2V0U2hhcmUJAARMAAAAAgkAAaQAAAABBQAAABFscFByaWNlQXNzZXRTaGFyZQkABEwAAAACCQABpAAAAAEFAAAACnBvb2xXZWlnaHQFAAAAA25pbAUAAAADU0VQAAAAAWkBAAAAIGV2YWx1YXRlUHV0QnlBbW91bnRBc3NldFJFQURPTkxZAAAAAQAAAAxpbkFtQXNzZXRBbXQEAAAAA2NmZwkBAAAADWdldFBvb2xDb25maWcAAAAABAAAAAlscEFzc2V0SWQJAAJZAAAAAQkAAZEAAAACBQAAAANjZmcFAAAAEGlkeFBvb2xMUEFzc2V0SWQEAAAADGFtQXNzZXRJZFN0cgkAAZEAAAACBQAAAANjZmcFAAAADWlkeEFtdEFzc2V0SWQEAAAACWFtQXNzZXRJZAkAAlkAAAABBQAAAAxhbUFzc2V0SWRTdHIEAAAADHByQXNzZXRJZFN0cgkAAZEAAAACBQAAAANjZmcFAAAAD2lkeFByaWNlQXNzZXRJZAQAAAAJcHJBc3NldElkCQACWQAAAAEFAAAADHByQXNzZXRJZFN0cgQAAAALYW10QXNzZXREY20JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAANjZmcFAAAADmlkeEFtdEFzc2V0RGNtBAAAAA1wcmljZUFzc2V0RGNtCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAABBpZHhQcmljZUFzc2V0RGNtBAAAAApwb29sU3RhdHVzCQABkQAAAAIFAAAAA2NmZwUAAAANaWR4UG9vbFN0YXR1cwQAAAANcG9vbExQQmFsYW5jZQgJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkAA+wAAAABBQAAAAlscEFzc2V0SWQJAAEsAAAAAgkAASwAAAACAgAAAAZBc3NldCAJAAJYAAAAAQUAAAAJbHBBc3NldElkAgAAAA4gZG9lc24ndCBleGlzdAAAAAhxdWFudGl0eQQAAAASYWNjQW10QXNzZXRCYWxhbmNlCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAADGFtQXNzZXRJZFN0cgQAAAAUYWNjUHJpY2VBc3NldEJhbGFuY2UJAQAAAA1nZXRBY2NCYWxhbmNlAAAAAQUAAAAMcHJBc3NldElkU3RyBAAAAA5hbXRBc3NldEFtdFgxOAkBAAAABXRvWDE4AAAAAgUAAAASYWNjQW10QXNzZXRCYWxhbmNlBQAAAAthbXRBc3NldERjbQQAAAAQcHJpY2VBc3NldEFtdFgxOAkBAAAABXRvWDE4AAAAAgUAAAAUYWNjUHJpY2VBc3NldEJhbGFuY2UFAAAADXByaWNlQXNzZXREY20EAAAAC2N1clByaWNlWDE4AwkAAAAAAAACBQAAAA1wb29sTFBCYWxhbmNlAAAAAAAAAAAABQAAAAp6ZXJvQmlnSW50CQEAAAAPY2FsY1ByaWNlQmlnSW50AAAAAgUAAAAQcHJpY2VBc3NldEFtdFgxOAUAAAAOYW10QXNzZXRBbXRYMTgEAAAAD2luQW1Bc3NldEFtdFgxOAkBAAAABXRvWDE4AAAAAgUAAAAMaW5BbUFzc2V0QW10BQAAAAthbXRBc3NldERjbQQAAAAPaW5QckFzc2V0QW10WDE4CQABPAAAAAMFAAAAD2luQW1Bc3NldEFtdFgxOAUAAAALY3VyUHJpY2VYMTgFAAAAB3NjYWxlMTgEAAAADGluUHJBc3NldEFtdAkBAAAAB2Zyb21YMTgAAAACBQAAAA9pblByQXNzZXRBbXRYMTgFAAAADXByaWNlQXNzZXREY20EAAAABmVzdFB1dAkBAAAAFGVzdGltYXRlUHV0T3BlcmF0aW9uAAAACQIAAAAAAAAAAAAAB6EgBQAAAAxpbkFtQXNzZXRBbXQFAAAACWFtQXNzZXRJZAUAAAAMaW5QckFzc2V0QW10BQAAAAlwckFzc2V0SWQCAAAAAAYHBAAAAAljYWxjTHBBbXQIBQAAAAZlc3RQdXQAAAACXzEEAAAADGN1clByaWNlQ2FsYwgFAAAABmVzdFB1dAAAAAJfMwQAAAAJYW1CYWxhbmNlCAUAAAAGZXN0UHV0AAAAAl80BAAAAAlwckJhbGFuY2UIBQAAAAZlc3RQdXQAAAACXzUEAAAACmxwRW1pc3Npb24IBQAAAAZlc3RQdXQAAAACXzYJAAUUAAAAAgUAAAADbmlsCQAEuQAAAAIJAARMAAAAAgIAAAAQJWQlZCVkJWQlZCVkJWQlZAkABEwAAAACCQABpAAAAAEFAAAACWNhbGNMcEFtdAkABEwAAAACCQABpAAAAAEJAQAAAAdmcm9tWDE4AAAAAgUAAAALY3VyUHJpY2VYMTgFAAAABnNjYWxlOAkABEwAAAACCQABpAAAAAEFAAAACWFtQmFsYW5jZQkABEwAAAACCQABpAAAAAEFAAAACXByQmFsYW5jZQkABEwAAAACCQABpAAAAAEFAAAACmxwRW1pc3Npb24JAARMAAAAAgUAAAAKcG9vbFN0YXR1cwkABEwAAAACCQABpAAAAAEFAAAADGluQW1Bc3NldEFtdAkABEwAAAACCQABpAAAAAEFAAAADGluUHJBc3NldEFtdAUAAAADbmlsBQAAAANTRVAAAAABaQEAAAAfZXZhbHVhdGVQdXRCeVByaWNlQXNzZXRSRUFET05MWQAAAAEAAAAMaW5QckFzc2V0QW10BAAAAANjZmcJAQAAAA1nZXRQb29sQ29uZmlnAAAAAAQAAAAJbHBBc3NldElkCQACWQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAABBpZHhQb29sTFBBc3NldElkBAAAAAxhbUFzc2V0SWRTdHIJAAGRAAAAAgUAAAADY2ZnBQAAAA1pZHhBbXRBc3NldElkBAAAAAlhbUFzc2V0SWQJAAJZAAAAAQUAAAAMYW1Bc3NldElkU3RyBAAAAAxwckFzc2V0SWRTdHIJAAGRAAAAAgUAAAADY2ZnBQAAAA9pZHhQcmljZUFzc2V0SWQEAAAACXByQXNzZXRJZAkAAlkAAAABBQAAAAxwckFzc2V0SWRTdHIEAAAAC2FtdEFzc2V0RGNtCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAAA5pZHhBbXRBc3NldERjbQQAAAANcHJpY2VBc3NldERjbQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAA2NmZwUAAAAQaWR4UHJpY2VBc3NldERjbQQAAAAKcG9vbFN0YXR1cwkAAZEAAAACBQAAAANjZmcFAAAADWlkeFBvb2xTdGF0dXMEAAAADXBvb2xMUEJhbGFuY2UICQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAPsAAAAAQUAAAAJbHBBc3NldElkCQABLAAAAAIJAAEsAAAAAgIAAAAGQXNzZXQgCQACWAAAAAEFAAAACWxwQXNzZXRJZAIAAAAOIGRvZXNuJ3QgZXhpc3QAAAAIcXVhbnRpdHkEAAAADGFtQmFsYW5jZVJhdwkBAAAADWdldEFjY0JhbGFuY2UAAAABBQAAAAxhbUFzc2V0SWRTdHIEAAAADHByQmFsYW5jZVJhdwkBAAAADWdldEFjY0JhbGFuY2UAAAABBQAAAAxwckFzc2V0SWRTdHIEAAAAD2FtQmFsYW5jZVJhd1gxOAkBAAAABXRvWDE4AAAAAgUAAAAMYW1CYWxhbmNlUmF3BQAAAAthbXRBc3NldERjbQQAAAAPcHJCYWxhbmNlUmF3WDE4CQEAAAAFdG9YMTgAAAACBQAAAAxwckJhbGFuY2VSYXcFAAAADXByaWNlQXNzZXREY20EAAAAC2N1clByaWNlWDE4AwkAAAAAAAACBQAAAA1wb29sTFBCYWxhbmNlAAAAAAAAAAAABQAAAAp6ZXJvQmlnSW50CQEAAAAPY2FsY1ByaWNlQmlnSW50AAAAAgUAAAAPcHJCYWxhbmNlUmF3WDE4BQAAAA9hbUJhbGFuY2VSYXdYMTgEAAAAD2luUHJBc3NldEFtdFgxOAkBAAAABXRvWDE4AAAAAgUAAAAMaW5QckFzc2V0QW10BQAAAA1wcmljZUFzc2V0RGNtBAAAAA9pbkFtQXNzZXRBbXRYMTgJAAE8AAAAAwUAAAAPaW5QckFzc2V0QW10WDE4BQAAAAdzY2FsZTE4BQAAAAtjdXJQcmljZVgxOAQAAAAMaW5BbUFzc2V0QW10CQEAAAAHZnJvbVgxOAAAAAIFAAAAD2luQW1Bc3NldEFtdFgxOAUAAAALYW10QXNzZXREY20EAAAABmVzdFB1dAkBAAAAFGVzdGltYXRlUHV0T3BlcmF0aW9uAAAACQIAAAAAAAAA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", "chainId": 84, "height": 1834085, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: nwBDxvd2ntWN7VTDmJr1BEsJdcVJZXjhKfs13WUMoxX Next: 145BJQzaVscfJ5SPBecemxZyhgqBRyLMkyPWkR5ZyME3 Diff:
OldNewDifferences
484484
485485
486486 @Callable(cD)
487-func activate (db,dc) = if ((toString(cD.caller) != toString(as)))
487+func unstakeAndGet (db) = {
488+ let dc = if ((size(cD.payments) != 0))
489+ then throw("No payments are expected")
490+ else true
491+ if ((dc == dc))
492+ then {
493+ let bc = av()
494+ let cM = ay()
495+ let bp = fromBase58String(bc[n])
496+ let cN = valueOrErrorMessage(addressFromString(cM[y]), "Error. Incorrect staking address.")
497+ let dd = invoke(cN, "unstake", [toBase58String(bp), db], nil)
498+ if ((dd == dd))
499+ then {
500+ let bY = bl(toBase58String(cD.transactionId), toBase58String(bp), db, cD.caller)
501+ let bs = parseIntValue(bY._9)
502+ let bG = bY._10
503+ let de = if (if (at())
504+ then true
505+ else (bs == k))
506+ then throw(("Get operation is blocked by admin. Status = " + toString(bs)))
507+ else true
508+ if ((de == de))
509+ then {
510+ let cY = invoke(as, "burn", [db], [AttachedPayment(bp, db)])
511+ if ((cY == cY))
512+ then bG
513+ else throw("Strict value is not equal to itself.")
514+ }
515+ else throw("Strict value is not equal to itself.")
516+ }
517+ else throw("Strict value is not equal to itself.")
518+ }
519+ else throw("Strict value is not equal to itself.")
520+ }
521+
522+
523+
524+@Callable(cD)
525+func activate (df,dg) = if ((toString(cD.caller) != toString(as)))
488526 then throw("permissions denied")
489- else $Tuple2([StringEntry(V(), db), StringEntry(W(), dc)], "success")
527+ else $Tuple2([StringEntry(V(), df), StringEntry(W(), dg)], "success")
528+
529+
530+
531+@Callable(cD)
532+func getPoolConfigWrapperREADONLY () = $Tuple2(nil, av())
533+
534+
535+
536+@Callable(cD)
537+func getAccBalanceWrapperREADONLY (aP) = $Tuple2(nil, aO(aP))
538+
539+
540+
541+@Callable(cD)
542+func calcPricesWrapperREADONLY (aW,aX,bb) = {
543+ let bk = ba(aW, aX, bb)
544+ $Tuple2(nil, [toString(bk[0]), toString(bk[1]), toString(bk[2])])
545+ }
546+
547+
548+
549+@Callable(cD)
550+func fromX18WrapperREADONLY (E,F) = $Tuple2(nil, D(parseBigIntValue(E), F))
490551
491552
492553
500561 let bS = bc[t]
501562 let bd = parseIntValue(bc[q])
502563 let be = parseIntValue(bc[r])
503- let dd = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
564+ let dh = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
504565 let cs = aO(cq)
505566 let ct = aO(cr)
506- let de = ba(cs, ct, dd)
567+ let di = if ((dh == 0))
568+ then [e, e, e]
569+ else ba(cs, ct, dh)
507570 let bz = 0
508- let df = D(de[1], b)
509- let dg = D(de[2], b)
510- let dh = value(getInteger(as, ai(toString(this))))
511- $Tuple2(nil, makeString(["%d%d%d%d%d%d%d", toString(cs), toString(ct), toString(dd), toString(bz), toString(df), toString(dg), toString(dh)], f))
571+ let dj = D(di[1], b)
572+ let dk = D(di[2], b)
573+ let dl = value(getInteger(as, ai(toString(this))))
574+ $Tuple2(nil, makeString(["%d%d%d%d%d%d%d", toString(cs), toString(ct), toString(dh), toString(bz), toString(dj), toString(dk), toString(dl)], f))
512575 }
513576
514577
524587 let bd = parseIntValue(bc[q])
525588 let be = parseIntValue(bc[r])
526589 let bs = bc[m]
527- let dd = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
590+ let dh = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
528591 let cs = aO(bP)
529592 let ct = aO(bQ)
530593 let aY = A(cs, bd)
531594 let aZ = A(ct, be)
532- let by = if ((dd == 0))
595+ let by = if ((dh == 0))
533596 then e
534597 else aQ(aZ, aY)
535598 let bV = A(bJ, bd)
537600 let bL = D(bW, be)
538601 let cJ = bH("", 500000, bJ, bq, bL, br, "", true, false)
539602 let cg = cJ._1
540- let di = cJ._3
603+ let dm = cJ._3
541604 let bu = cJ._4
542605 let bw = cJ._5
543606 let bt = cJ._6
557620 let bd = parseIntValue(bc[q])
558621 let be = parseIntValue(bc[r])
559622 let bs = bc[m]
560- let dd = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
561- let dj = aO(bP)
562- let dk = aO(bQ)
563- let dl = A(dj, bd)
564- let dm = A(dk, be)
565- let by = if ((dd == 0))
623+ let dh = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
624+ let dn = aO(bP)
625+ let do = aO(bQ)
626+ let dp = A(dn, bd)
627+ let dq = A(do, be)
628+ let by = if ((dh == 0))
566629 then e
567- else aQ(dm, dl)
630+ else aQ(dq, dp)
568631 let bW = A(bL, be)
569632 let bV = fraction(bW, d, by)
570633 let bJ = D(bV, bd)
571634 let cJ = bH("", 500000, bJ, bq, bL, br, "", true, false)
572635 let cg = cJ._1
573- let di = cJ._3
636+ let dm = cJ._3
574637 let bu = cJ._4
575638 let bw = cJ._5
576639 let bt = cJ._6
580643
581644
582645 @Callable(cD)
583-func evaluateGetREADONLY (dn,do) = {
584- let bY = bl("", dn, do, this)
646+func evaluateGetREADONLY (dr,ds) = {
647+ let bY = bl("", dr, ds, this)
585648 let bE = bY._1
586649 let bF = bY._2
587650 let bu = bY._5
593656 }
594657
595658
596-@Verifier(dp)
597-func dq () = {
598- let dr = dp
599- if ($isInstanceOf(dr, "Order"))
659+@Verifier(dt)
660+func du () = {
661+ let dv = dt
662+ if ($isInstanceOf(dv, "Order"))
600663 then {
601- let cp = dr
602- let ds = au()
664+ let cp = dv
665+ let dw = au()
603666 let al = co(cp)
604667 let am = sigVerify(cp.bodyBytes, cp.proofs[0], cp.senderPublicKey)
605- let an = sigVerify(cp.bodyBytes, cp.proofs[1], ds)
668+ let an = sigVerify(cp.bodyBytes, cp.proofs[1], dw)
606669 if (if (if (al)
607670 then am
608671 else false)
612675 else ak(al, am, an)
613676 }
614677 else {
615- let dt = valueOrElse(getString(this, M()), g)
616- if ((dt == g))
617- then sigVerify(dp.bodyBytes, dp.proofs[0], dp.senderPublicKey)
618- else sigVerify(dp.bodyBytes, dp.proofs[0], fromBase58String(dt))
678+ let dx = valueOrElse(getString(this, M()), g)
679+ if ((dx == g))
680+ then sigVerify(dt.bodyBytes, dt.proofs[0], dt.senderPublicKey)
681+ else sigVerify(dt.bodyBytes, dt.proofs[0], fromBase58String(dx))
619682 }
620683 }
621684
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 8
55
66 let b = 100000000
77
88 let c = toBigInt(100000000)
99
1010 let d = toBigInt(1000000000000000000)
1111
1212 let e = toBigInt(0)
1313
1414 let f = "__"
1515
1616 let g = ""
1717
1818 let h = 1
1919
2020 let i = 2
2121
2222 let j = 3
2323
2424 let k = 4
2525
2626 let l = 1
2727
2828 let m = 2
2929
3030 let n = 3
3131
3232 let o = 4
3333
3434 let p = 5
3535
3636 let q = 6
3737
3838 let r = 7
3939
4040 let s = 8
4141
4242 let t = 9
4343
4444 let u = 10
4545
4646 let v = 1
4747
4848 let w = 2
4949
5050 let x = 3
5151
5252 let y = 1
5353
5454 let z = 7
5555
5656 func A (B,C) = fraction(toBigInt(B), d, toBigInt(C))
5757
5858
5959 func D (E,F) = toInt(fraction(E, toBigInt(F), d))
6060
6161
6262 func G (H,I,J) = fraction(H, I, J)
6363
6464
6565 func K (E) = if ((e > E))
6666 then -(E)
6767 else E
6868
6969
7070 func L () = "%s__factoryContract"
7171
7272
7373 func M () = "%s__managerPublicKey"
7474
7575
7676 func N () = "%s%s__price__last"
7777
7878
7979 func O (P,Q) = makeString(["%s%s%d%d__price__history", toString(P), toString(Q)], f)
8080
8181
8282 func R (S,T) = ((("%s%s%s__P__" + S) + "__") + T)
8383
8484
8585 func U (S,T) = ((("%s%s%s__G__" + S) + "__") + T)
8686
8787
8888 func V () = "%s__amountAsset"
8989
9090
9191 func W () = "%s__priceAsset"
9292
9393
9494 func X (P,Q) = makeString(["%s%s%d%d__K_history", toString(P), toString(Q)], f)
9595
9696
9797 func Y () = "%s__factoryConfig"
9898
9999
100100 func Z () = "%s%s__matcher__publicKey"
101101
102102
103103 func aa (ab) = (("%s%s%s__" + ab) + "__mappings__poolContract2LpAsset")
104104
105105
106106 func ac (ad,ae) = (((("%d%d%s__" + ad) + "__") + ae) + "__config")
107107
108108
109109 func af (ag) = ("%s%s%s__mappings__baseAsset2internalId__" + ag)
110110
111111
112112 func ah () = "%s__shutdown"
113113
114114
115115 func ai (aj) = ("%s%s__poolWeight__" + aj)
116116
117117
118118 func ak (al,am,an) = throw(((((("order validation failed: orderValid=" + toString(al)) + " senderValid=") + toString(am)) + " matcherValid=") + toString(an)))
119119
120120
121121 func ao (ap,aq) = valueOrErrorMessage(getString(ap, aq), makeString(["mandatory ", toString(ap), ".", aq, " is not defined"], ""))
122122
123123
124124 func ar (ap,aq) = valueOrErrorMessage(getInteger(ap, aq), makeString(["mandatory ", toString(ap), ".", aq, " is not defined"], ""))
125125
126126
127127 let as = addressFromStringValue(ao(this, L()))
128128
129129 func at () = valueOrElse(getBoolean(as, ah()), false)
130130
131131
132132 func au () = fromBase58String(ao(as, Z()))
133133
134134
135135 func av () = {
136136 let aw = ao(this, V())
137137 let ax = ao(this, W())
138138 let ae = ar(as, af(ax))
139139 let ad = ar(as, af(aw))
140140 split(ao(as, ac(toString(ad), toString(ae))), f)
141141 }
142142
143143
144144 func ay () = split(ao(as, Y()), f)
145145
146146
147147 func az (aA,aB,aC,aD,aE,aF,aG,aH,aI,aJ) = makeString(["%d%d%d%d%d%d%d%d%d%d", toString(aA), toString(aB), toString(aC), toString(aD), toString(aE), toString(aF), toString(aG), toString(aH), toString(aI), toString(aJ)], f)
148148
149149
150150 func aK (aL,aM,aN,aD,aG,aH) = makeString(["%d%d%d%d%d%d", toString(aL), toString(aM), toString(aN), toString(aD), toString(aG), toString(aH)], f)
151151
152152
153153 func aO (aP) = if ((aP == "WAVES"))
154154 then wavesBalance(this).available
155155 else assetBalance(this, fromBase58String(aP))
156156
157157
158158 func aQ (aR,aS) = fraction(aR, d, aS)
159159
160160
161161 func aT (aU,aV,aW,aX) = {
162162 let aY = A(aW, aU)
163163 let aZ = A(aX, aV)
164164 aQ(aZ, aY)
165165 }
166166
167167
168168 func ba (aW,aX,bb) = {
169169 let bc = av()
170170 let bd = parseIntValue(bc[q])
171171 let be = parseIntValue(bc[r])
172172 let bf = aT(bd, be, aW, aX)
173173 let aS = A(aW, bd)
174174 let aR = A(aX, be)
175175 let bg = A(bb, b)
176176 let bh = aQ(aS, bg)
177177 let bi = aQ(aR, bg)
178178 [bf, bh, bi]
179179 }
180180
181181
182182 func bj (aW,aX,bb) = {
183183 let bk = ba(aW, aX, bb)
184184 [D(bk[0], b), D(bk[1], b), D(bk[2], b)]
185185 }
186186
187187
188188 func bl (bm,bn,bo,S) = {
189189 let bc = av()
190190 let bp = bc[n]
191191 let bq = bc[o]
192192 let br = bc[p]
193193 let aU = parseIntValue(bc[q])
194194 let aV = parseIntValue(bc[r])
195195 let bs = bc[m]
196196 let bt = valueOrErrorMessage(assetInfo(fromBase58String(bp)), (("Asset " + bp) + " doesn't exist")).quantity
197197 if ((bp != bn))
198198 then throw("Invalid asset passed.")
199199 else {
200200 let bu = aO(bq)
201201 let bv = A(bu, aU)
202202 let bw = aO(br)
203203 let bx = A(bw, aV)
204204 let by = aQ(bx, bv)
205205 let bz = D(by, b)
206206 let bA = A(bo, b)
207207 let bB = A(bt, b)
208208 let bC = fraction(bv, bA, bB)
209209 let bD = fraction(bx, bA, bB)
210210 let bE = D(bC, aU)
211211 let bF = D(bD, aV)
212212 let bG = if ((bm == ""))
213213 then nil
214214 else [ScriptTransfer(S, bE, if ((bq == "WAVES"))
215215 then unit
216216 else fromBase58String(bq)), ScriptTransfer(S, bF, if ((br == "WAVES"))
217217 then unit
218218 else fromBase58String(br)), StringEntry(U(toString(S), bm), aK(bE, bF, bo, bz, height, lastBlock.timestamp)), IntegerEntry(N(), bz), IntegerEntry(O(height, lastBlock.timestamp), bz)]
219219 $Tuple10(bE, bF, bq, br, bu, bw, bt, by, bs, bG)
220220 }
221221 }
222222
223223
224224 func bH (bm,bI,bJ,bK,bL,bM,S,bN,bO) = {
225225 let bc = av()
226226 let bp = fromBase58String(bc[n])
227227 let bP = bc[o]
228228 let bQ = bc[p]
229229 let bR = bc[s]
230230 let bS = bc[t]
231231 let bd = parseIntValue(bc[q])
232232 let be = parseIntValue(bc[r])
233233 let bs = bc[m]
234234 let bt = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
235235 let bT = toBase58String(valueOrElse(bK, fromBase58String("WAVES")))
236236 let bU = toBase58String(valueOrElse(bM, fromBase58String("WAVES")))
237237 if (if ((bP != bT))
238238 then true
239239 else (bQ != bU))
240240 then throw("Invalid amt or price asset passed.")
241241 else {
242242 let bu = if (bN)
243243 then aO(bP)
244244 else (aO(bP) - bJ)
245245 let bw = if (bN)
246246 then aO(bQ)
247247 else (aO(bQ) - bL)
248248 let bV = A(bJ, bd)
249249 let bW = A(bL, be)
250250 let bX = aQ(bW, bV)
251251 let bv = A(bu, bd)
252252 let bx = A(bw, be)
253253 let bY = if ((bt == 0))
254254 then {
255255 let by = e
256256 let bZ = e
257257 let bg = pow((bV * bW), 0, toBigInt(5), 1, 0, DOWN)
258258 $Tuple5(D(bg, b), D(bV, bd), D(bW, be), aQ((bx + bW), (bv + bV)), bZ)
259259 }
260260 else {
261261 let by = aQ(bx, bv)
262262 let bZ = fraction(K((by - bX)), d, by)
263263 let ca = A(bI, b)
264264 if (if ((by != e))
265265 then (bZ > ca)
266266 else false)
267267 then throw(((("Price slippage " + toString(bZ)) + " exceeded the passed limit of ") + toString(ca)))
268268 else {
269269 let bB = A(bt, b)
270270 let cb = fraction(bV, by, d)
271271 let cc = fraction(bW, d, by)
272272 let cd = if ((cb > bW))
273273 then $Tuple2(cc, bW)
274274 else $Tuple2(bV, cb)
275275 let ce = cd._1
276276 let cf = cd._2
277277 let bg = fraction(bB, cf, bx)
278278 $Tuple5(D(bg, b), D(ce, bd), D(cf, be), by, bZ)
279279 }
280280 }
281281 let cg = bY._1
282282 let ch = bY._2
283283 let ci = bY._3
284284 let bz = D(bY._4, b)
285285 let cj = D(bY._5, b)
286286 if ((0 >= cg))
287287 then throw("Invalid calculations. LP calculated is less than zero.")
288288 else {
289289 let ck = if (!(bO))
290290 then 0
291291 else cg
292292 let cl = (bJ - ch)
293293 let cm = (bL - ci)
294294 let cn = [IntegerEntry(N(), bz), IntegerEntry(O(height, lastBlock.timestamp), bz), StringEntry(R(S, bm), az(ch, ci, ck, bz, bI, cj, height, lastBlock.timestamp, cl, cm))]
295295 $Tuple13(cg, ck, bz, bu, bw, bt, bp, bs, cn, cl, cm, bK, bM)
296296 }
297297 }
298298 }
299299
300300
301301 func co (cp) = {
302302 let bc = av()
303303 let cq = bc[o]
304304 let cr = bc[p]
305305 let bs = parseIntValue(bc[m])
306306 let bd = parseIntValue(bc[q])
307307 let be = parseIntValue(bc[r])
308308 let cs = aO(cq)
309309 let ct = aO(cr)
310310 let by = if ((cp.orderType == Buy))
311311 then aT(bd, be, (cs + cp.amount), ct)
312312 else aT(bd, be, (cs - cp.amount), ct)
313313 let bz = D(by, b)
314314 if (if (if (at())
315315 then true
316316 else (bs == j))
317317 then true
318318 else (bs == k))
319319 then throw("Exchange operations disabled")
320320 else {
321321 let cu = cp.assetPair.amountAsset
322322 let cv = if ((cu == unit))
323323 then "WAVES"
324324 else toBase58String(value(cu))
325325 let cw = cp.assetPair.priceAsset
326326 let cx = if ((cw == unit))
327327 then "WAVES"
328328 else toBase58String(value(cw))
329329 if (if ((cv != cq))
330330 then true
331331 else (cx != cr))
332332 then throw("Wrong order assets.")
333333 else {
334334 let cy = cp.price
335335 let cz = fraction(b, be, bd)
336336 let cA = G(cy, b, cz)
337337 let cB = if ((cp.orderType == Buy))
338338 then (bz >= cA)
339339 else (cA >= bz)
340340 true
341341 }
342342 }
343343 }
344344
345345
346346 func cC (cD) = if ((size(cD.payments) != 1))
347347 then throw("exactly 1 payment is expected")
348348 else {
349349 let cE = value(cD.payments[0])
350350 let bn = value(cE.assetId)
351351 let cF = cE.amount
352352 let bY = bl(toBase58String(cD.transactionId), toBase58String(bn), cF, cD.caller)
353353 let bE = bY._1
354354 let bF = bY._2
355355 let bs = parseIntValue(bY._9)
356356 let bG = bY._10
357357 if (if (at())
358358 then true
359359 else (bs == k))
360360 then throw(("Get operation is blocked by admin. Status = " + toString(bs)))
361361 else $Tuple5(bE, bF, cF, bn, bG)
362362 }
363363
364364
365365 func cG (cD,bI,bO) = if ((size(cD.payments) != 2))
366366 then throw("exactly 2 payments are expected")
367367 else {
368368 let cH = value(cD.payments[0])
369369 let cI = value(cD.payments[1])
370370 let cJ = bH(toBase58String(cD.transactionId), bI, cH.amount, cH.assetId, cI.amount, cI.assetId, toString(cD.caller), false, bO)
371371 let bs = parseIntValue(cJ._8)
372372 if (if (if (at())
373373 then true
374374 else (bs == i))
375375 then true
376376 else (bs == k))
377377 then throw(("Put operation is blocked by admin. Status = " + toString(bs)))
378378 else cJ
379379 }
380380
381381
382382 @Callable(cD)
383383 func constructor (as,cK) = if ((cD.caller != this))
384384 then throw("permissions denied")
385385 else [StringEntry(L(), as), StringEntry(M(), cK)]
386386
387387
388388
389389 @Callable(cD)
390390 func put (bI,cL) = {
391391 let cM = ay()
392392 let cN = valueOrErrorMessage(addressFromString(cM[y]), "Error. Incorrect staking address.")
393393 let cO = valueOrErrorMessage(addressFromString(cM[z]), "Error. Incorrect slippage contract address.")
394394 if ((0 > bI))
395395 then throw("Invalid slippageTolerance passed")
396396 else {
397397 let cJ = cG(cD, bI, true)
398398 let ck = cJ._2
399399 let bp = cJ._7
400400 let bG = cJ._9
401401 let cl = cJ._10
402402 let cm = cJ._11
403403 let cP = cJ._12
404404 let cQ = cJ._13
405405 let cR = invoke(as, "emit", [ck], nil)
406406 if ((cR == cR))
407407 then {
408408 let cS = if ((cl > 0))
409409 then invoke(cO, "put", nil, [AttachedPayment(cP, cl)])
410410 else nil
411411 if ((cS == cS))
412412 then {
413413 let cT = if ((cm > 0))
414414 then invoke(cO, "put", nil, [AttachedPayment(cQ, cm)])
415415 else nil
416416 if ((cT == cT))
417417 then {
418418 let cU = if (cL)
419419 then {
420420 let cV = invoke(cN, "stake", nil, [AttachedPayment(bp, ck)])
421421 if ((cV == cV))
422422 then nil
423423 else throw("Strict value is not equal to itself.")
424424 }
425425 else [ScriptTransfer(cD.caller, ck, bp)]
426426 (bG ++ cU)
427427 }
428428 else throw("Strict value is not equal to itself.")
429429 }
430430 else throw("Strict value is not equal to itself.")
431431 }
432432 else throw("Strict value is not equal to itself.")
433433 }
434434 }
435435
436436
437437
438438 @Callable(cD)
439439 func putForFree (cW) = if ((0 > cW))
440440 then throw("Invalid value passed")
441441 else {
442442 let cJ = cG(cD, cW, false)
443443 cJ._9
444444 }
445445
446446
447447
448448 @Callable(cD)
449449 func get () = {
450450 let bY = cC(cD)
451451 let cX = bY._1
452452 let bF = bY._2
453453 let cF = bY._3
454454 let bn = bY._4
455455 let bG = bY._5
456456 let cY = invoke(as, "burn", [cF], [AttachedPayment(bn, cF)])
457457 if ((cY == cY))
458458 then bG
459459 else throw("Strict value is not equal to itself.")
460460 }
461461
462462
463463
464464 @Callable(cD)
465465 func getNoLess (cZ,da) = {
466466 let bY = cC(cD)
467467 let bE = bY._1
468468 let bF = bY._2
469469 let cF = bY._3
470470 let bn = bY._4
471471 let bG = bY._5
472472 if ((cZ > bE))
473473 then throw(((("noLessThenAmtAsset failed: " + toString(bE)) + " < ") + toString(cZ)))
474474 else if ((da > bF))
475475 then throw(((("noLessThenPriceAsset failed: " + toString(bF)) + " < ") + toString(da)))
476476 else {
477477 let cY = invoke(as, "burn", [cF], [AttachedPayment(bn, cF)])
478478 if ((cY == cY))
479479 then bG
480480 else throw("Strict value is not equal to itself.")
481481 }
482482 }
483483
484484
485485
486486 @Callable(cD)
487-func activate (db,dc) = if ((toString(cD.caller) != toString(as)))
487+func unstakeAndGet (db) = {
488+ let dc = if ((size(cD.payments) != 0))
489+ then throw("No payments are expected")
490+ else true
491+ if ((dc == dc))
492+ then {
493+ let bc = av()
494+ let cM = ay()
495+ let bp = fromBase58String(bc[n])
496+ let cN = valueOrErrorMessage(addressFromString(cM[y]), "Error. Incorrect staking address.")
497+ let dd = invoke(cN, "unstake", [toBase58String(bp), db], nil)
498+ if ((dd == dd))
499+ then {
500+ let bY = bl(toBase58String(cD.transactionId), toBase58String(bp), db, cD.caller)
501+ let bs = parseIntValue(bY._9)
502+ let bG = bY._10
503+ let de = if (if (at())
504+ then true
505+ else (bs == k))
506+ then throw(("Get operation is blocked by admin. Status = " + toString(bs)))
507+ else true
508+ if ((de == de))
509+ then {
510+ let cY = invoke(as, "burn", [db], [AttachedPayment(bp, db)])
511+ if ((cY == cY))
512+ then bG
513+ else throw("Strict value is not equal to itself.")
514+ }
515+ else throw("Strict value is not equal to itself.")
516+ }
517+ else throw("Strict value is not equal to itself.")
518+ }
519+ else throw("Strict value is not equal to itself.")
520+ }
521+
522+
523+
524+@Callable(cD)
525+func activate (df,dg) = if ((toString(cD.caller) != toString(as)))
488526 then throw("permissions denied")
489- else $Tuple2([StringEntry(V(), db), StringEntry(W(), dc)], "success")
527+ else $Tuple2([StringEntry(V(), df), StringEntry(W(), dg)], "success")
528+
529+
530+
531+@Callable(cD)
532+func getPoolConfigWrapperREADONLY () = $Tuple2(nil, av())
533+
534+
535+
536+@Callable(cD)
537+func getAccBalanceWrapperREADONLY (aP) = $Tuple2(nil, aO(aP))
538+
539+
540+
541+@Callable(cD)
542+func calcPricesWrapperREADONLY (aW,aX,bb) = {
543+ let bk = ba(aW, aX, bb)
544+ $Tuple2(nil, [toString(bk[0]), toString(bk[1]), toString(bk[2])])
545+ }
546+
547+
548+
549+@Callable(cD)
550+func fromX18WrapperREADONLY (E,F) = $Tuple2(nil, D(parseBigIntValue(E), F))
490551
491552
492553
493554 @Callable(cD)
494555 func statsREADONLY () = {
495556 let bc = av()
496557 let bp = fromBase58String(bc[n])
497558 let cq = bc[o]
498559 let cr = bc[p]
499560 let bR = bc[s]
500561 let bS = bc[t]
501562 let bd = parseIntValue(bc[q])
502563 let be = parseIntValue(bc[r])
503- let dd = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
564+ let dh = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
504565 let cs = aO(cq)
505566 let ct = aO(cr)
506- let de = ba(cs, ct, dd)
567+ let di = if ((dh == 0))
568+ then [e, e, e]
569+ else ba(cs, ct, dh)
507570 let bz = 0
508- let df = D(de[1], b)
509- let dg = D(de[2], b)
510- let dh = value(getInteger(as, ai(toString(this))))
511- $Tuple2(nil, makeString(["%d%d%d%d%d%d%d", toString(cs), toString(ct), toString(dd), toString(bz), toString(df), toString(dg), toString(dh)], f))
571+ let dj = D(di[1], b)
572+ let dk = D(di[2], b)
573+ let dl = value(getInteger(as, ai(toString(this))))
574+ $Tuple2(nil, makeString(["%d%d%d%d%d%d%d", toString(cs), toString(ct), toString(dh), toString(bz), toString(dj), toString(dk), toString(dl)], f))
512575 }
513576
514577
515578
516579 @Callable(cD)
517580 func evaluatePutByAmountAssetREADONLY (bJ) = {
518581 let bc = av()
519582 let bp = fromBase58String(bc[n])
520583 let bP = bc[o]
521584 let bq = fromBase58String(bP)
522585 let bQ = bc[p]
523586 let br = fromBase58String(bQ)
524587 let bd = parseIntValue(bc[q])
525588 let be = parseIntValue(bc[r])
526589 let bs = bc[m]
527- let dd = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
590+ let dh = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
528591 let cs = aO(bP)
529592 let ct = aO(bQ)
530593 let aY = A(cs, bd)
531594 let aZ = A(ct, be)
532- let by = if ((dd == 0))
595+ let by = if ((dh == 0))
533596 then e
534597 else aQ(aZ, aY)
535598 let bV = A(bJ, bd)
536599 let bW = fraction(bV, by, d)
537600 let bL = D(bW, be)
538601 let cJ = bH("", 500000, bJ, bq, bL, br, "", true, false)
539602 let cg = cJ._1
540- let di = cJ._3
603+ let dm = cJ._3
541604 let bu = cJ._4
542605 let bw = cJ._5
543606 let bt = cJ._6
544607 $Tuple2(nil, makeString(["%d%d%d%d%d%d%d%d", toString(cg), toString(D(by, b)), toString(bu), toString(bw), toString(bt), bs, toString(bJ), toString(bL)], f))
545608 }
546609
547610
548611
549612 @Callable(cD)
550613 func evaluatePutByPriceAssetREADONLY (bL) = {
551614 let bc = av()
552615 let bp = fromBase58String(bc[n])
553616 let bP = bc[o]
554617 let bq = fromBase58String(bP)
555618 let bQ = bc[p]
556619 let br = fromBase58String(bQ)
557620 let bd = parseIntValue(bc[q])
558621 let be = parseIntValue(bc[r])
559622 let bs = bc[m]
560- let dd = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
561- let dj = aO(bP)
562- let dk = aO(bQ)
563- let dl = A(dj, bd)
564- let dm = A(dk, be)
565- let by = if ((dd == 0))
623+ let dh = valueOrErrorMessage(assetInfo(bp), (("Asset " + toBase58String(bp)) + " doesn't exist")).quantity
624+ let dn = aO(bP)
625+ let do = aO(bQ)
626+ let dp = A(dn, bd)
627+ let dq = A(do, be)
628+ let by = if ((dh == 0))
566629 then e
567- else aQ(dm, dl)
630+ else aQ(dq, dp)
568631 let bW = A(bL, be)
569632 let bV = fraction(bW, d, by)
570633 let bJ = D(bV, bd)
571634 let cJ = bH("", 500000, bJ, bq, bL, br, "", true, false)
572635 let cg = cJ._1
573- let di = cJ._3
636+ let dm = cJ._3
574637 let bu = cJ._4
575638 let bw = cJ._5
576639 let bt = cJ._6
577640 $Tuple2(nil, makeString(["%d%d%d%d%d%d%d%d", toString(cg), toString(D(by, b)), toString(bu), toString(bw), toString(bt), bs, toString(bJ), toString(bL)], f))
578641 }
579642
580643
581644
582645 @Callable(cD)
583-func evaluateGetREADONLY (dn,do) = {
584- let bY = bl("", dn, do, this)
646+func evaluateGetREADONLY (dr,ds) = {
647+ let bY = bl("", dr, ds, this)
585648 let bE = bY._1
586649 let bF = bY._2
587650 let bu = bY._5
588651 let bw = bY._6
589652 let bt = bY._7
590653 let bz = bY._8
591654 let bs = parseIntValue(bY._9)
592655 $Tuple2(nil, makeString(["%d%d%d%d%d%d%d", toString(bE), toString(bF), toString(bu), toString(bw), toString(bt), toString(bz), toString(bs)], f))
593656 }
594657
595658
596-@Verifier(dp)
597-func dq () = {
598- let dr = dp
599- if ($isInstanceOf(dr, "Order"))
659+@Verifier(dt)
660+func du () = {
661+ let dv = dt
662+ if ($isInstanceOf(dv, "Order"))
600663 then {
601- let cp = dr
602- let ds = au()
664+ let cp = dv
665+ let dw = au()
603666 let al = co(cp)
604667 let am = sigVerify(cp.bodyBytes, cp.proofs[0], cp.senderPublicKey)
605- let an = sigVerify(cp.bodyBytes, cp.proofs[1], ds)
668+ let an = sigVerify(cp.bodyBytes, cp.proofs[1], dw)
606669 if (if (if (al)
607670 then am
608671 else false)
609672 then an
610673 else false)
611674 then true
612675 else ak(al, am, an)
613676 }
614677 else {
615- let dt = valueOrElse(getString(this, M()), g)
616- if ((dt == g))
617- then sigVerify(dp.bodyBytes, dp.proofs[0], dp.senderPublicKey)
618- else sigVerify(dp.bodyBytes, dp.proofs[0], fromBase58String(dt))
678+ let dx = valueOrElse(getString(this, M()), g)
679+ if ((dx == g))
680+ then sigVerify(dt.bodyBytes, dt.proofs[0], dt.senderPublicKey)
681+ else sigVerify(dt.bodyBytes, dt.proofs[0], fromBase58String(dx))
619682 }
620683 }
621684

github/deemru/w8io/026f985 
116.22 ms