tx · 3AV734REgzz9uYw3CoxCFTr8FUmKWZaM2H5hbQJrdTTb

3NAefciWv6f9fWvEXdGgpHfanJFG8HqfjuT:  -0.01400000 Waves

2021.12.21 19:46 [1844282] smart account 3NAefciWv6f9fWvEXdGgpHfanJFG8HqfjuT > SELF 0.00000000 Waves

{ "type": 13, "id": "3AV734REgzz9uYw3CoxCFTr8FUmKWZaM2H5hbQJrdTTb", "fee": 1400000, "feeAssetId": null, "timestamp": 1640105183186, "version": 1, "sender": "3NAefciWv6f9fWvEXdGgpHfanJFG8HqfjuT", "senderPublicKey": "D1BL65meykxFZTCuq7jq9HSGLLnWvQamQPUNrguW5w39", "proofs": [ "23g9RVajWpMK1y2p5rhf1yohKSbTzQBtKxRcQS61gFDqK3gRAKmfxcrgttRnKjy5Hk4sK6B7LUVqQ3g2Nq3xPdkM" ], "script": "base64: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AA1rZXlNYXRjaGVyUHViAAAAAAIAAAAYJXMlc19fbWF0Y2hlcl9fcHVibGljS2V5AQAAAA1rZXlQb29sQ29uZmlnAAAAAgAAAAlpQW10QXNzZXQAAAALaVByaWNlQXNzZXQJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIJWQlZCVzX18FAAAACWlBbXRBc3NldAIAAAACX18FAAAAC2lQcmljZUFzc2V0AgAAAAhfX2NvbmZpZwEAAAAfa2V5TWFwcGluZ3NCYXNlQXNzZXQyaW50ZXJuYWxJZAAAAAEAAAAMYmFzZUFzc2V0U3RyCQABLAAAAAICAAAAKCVzJXMlc19fbWFwcGluZ3NfX2Jhc2VBc3NldDJpbnRlcm5hbElkX18FAAAADGJhc2VBc3NldFN0cgEAAAATa2V5QWxsUG9vbHNTaHV0ZG93bgAAAAACAAAADCVzX19zaHV0ZG93bgEAAAANa2V5UG9vbFdlaWdodAAAAAEAAAAPY29udHJhY3RBZGRyZXNzCQABLAAAAAICAAAAEiVzJXNfX3Bvb2xXZWlnaHRfXwUAAAAPY29udHJhY3RBZGRyZXNzAQAAAA90aHJvd09yZGVyRXJyb3IAAAADAAAACm9yZGVyVmFsaWQAAAALc2VuZGVyVmFsaWQAAAAMbWF0Y2hlclZhbGlkCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAACRvcmRlciB2YWxpZGF0aW9uIGZhaWxlZDogb3JkZXJWYWxpZD0JAAGlAAAAAQUAAAAKb3JkZXJWYWxpZAIAAAANIHNlbmRlclZhbGlkPQkAAaUAAAABBQAAAAtzZW5kZXJWYWxpZAIAAAAOIG1hdGNoZXJWYWxpZD0JAAGlAAAAAQUAAAAMbWF0Y2hlclZhbGlkAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACAAAAB2FkZHJlc3MAAAADa2V5CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQdAAAAAgUAAAAHYWRkcmVzcwUAAAADa2V5CQAEuQAAAAIJAARMAAAAAgIAAAAKbWFuZGF0b3J5IAkABEwAAAACCQAEJQAAAAEFAAAAB2FkZHJlc3MJAARMAAAAAgIAAAABLgkABEwA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dFgxOAkBAAAABXRvWDE4AAAAAgUAAAAIcG10THBBbXQFAAAABnNjYWxlOAQAAAANbHBFbWlzc2lvblgxOAkBAAAABXRvWDE4AAAAAgUAAAAKbHBFbWlzc2lvbgUAAAAGc2NhbGU4BAAAAAtvdXRBbUFtdFgxOAkAATwAAAADBQAAAAxhbUJhbGFuY2VYMTgFAAAAC3BtdExwQW10WDE4BQAAAA1scEVtaXNzaW9uWDE4BAAAAAtvdXRQckFtdFgxOAkAATwAAAADBQAAAAxwckJhbGFuY2VYMTgFAAAAC3BtdExwQW10WDE4BQAAAA1scEVtaXNzaW9uWDE4BAAAAAhvdXRBbUFtdAkBAAAAB2Zyb21YMTgAAAACBQAAAAtvdXRBbUFtdFgxOAUAAAAFYW1EY20EAAAACG91dFByQW10CQEAAAAHZnJvbVgxOAAAAAIFAAAAC291dFByQW10WDE4BQAAAAVwckRjbQQAAAAFc3RhdGUDCQAAAAAAAAIFAAAABnR4SWQ1OAIAAAAABQAAAANuaWwJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAALdXNlckFkZHJlc3MFAAAACG91dEFtQW10AwkAAAAAAAACBQAAAARhbUlkAgAAAAVXQVZFUwUAAAAEdW5pdAkAAlkAAAABBQAAAARhbUlkCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAAC3VzZXJBZGRyZXNzBQAAAAhvdXRQckFtdAMJAAAAAAAAAgUAAAAEcHJJZAIAAAAFV0FWRVMFAAAABHVuaXQJAAJZAAAAAQUAAAAEcHJJZAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAASa2V5R2V0QWN0aW9uQnlVc2VyAAAAAgkABCUAAAABBQAAAAt1c2VyQWRkcmVzcwUAAAAGdHhJZDU4CQEAAAARZGF0YUdldEFjdGlvbkluZm8AAAAGBQAAAAhvdXRBbUFtdAUAAAAIb3V0UHJBbXQFAAAACHBtdExwQW10BQAAAAhjdXJQcmljZQUAAAAGaGVpZ2h0CAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAADGtleVByaWNlTGFzdAAAAAAFAAAACGN1clByaWNlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAPa2V5UHJpY2VIaXN0b3J5AAAAAgUAAAAGaGVpZ2h0CAUAAAAJbGFzdEJsb2NrAAAACXRpbWVzdGFtcAUAAAAIY3VyUHJpY2UFAAAAA25pbAkABRwAAAAKBQAAAAhvdXRBbUFtdAUAAAAIb3V0UHJBbXQFAAAABGFtSWQFAAAABHBySWQFAAAACWFtQmFsYW5jZQUAAAAJcHJCYWxhbmNlBQAAAApscEVtaXNzaW9uBQAAAAtjdXJQcmljZVgxOAUAAAAKcG9vbFN0YXR1cwUAAAAFc3RhdGUBAAAAFGVzdGltYXRlUHV0T3BlcmF0aW9uAAAACgAAAAZ0eElkNTgAAAARc2xpcHBhZ2VUb2xlcmFuY2UAAAAHaW5BbUFtdAAAAAZpbkFtSWQAAAAHaW5QckFtdAAAAAZpblBySWQAAAALdXNlckFkZHJlc3MAAAAKaXNFdmFsdWF0ZQAAAAZlbWl0THAAAAAKaXNPbmVBc3NldAQAAAADY2ZnCQEAAAANZ2V0UG9vbENvbmZpZwAAAAAEAAAABGxwSWQJAAJZAAAAAQkAAZEAAAACBQAAAANjZmcFAAAACWlkeExQQXNJZAQAAAAHYW1JZFN0cgkAAZEAAAACBQAAAANjZmcFAAAACWlkeEFtQXNJZAQAAAAHcHJJZFN0cgkAAZEAAAACBQAAAANjZmcFAAAACWlkeFByQXNJZAQAAAAJaW5BbUlkU3RyCQABkQAAAAIFAAAAA2NmZwUAAAALaWR4SUFtdEFzSWQEAAAACWluUHJJZFN0cgkAAZEAAAACBQAAAANjZmcFAAAADWlkeElQcmljZUFzSWQEAAAABmFtdERjbQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAA2NmZwUAAAALaWR4QW10QXNEY20EAAAACHByaWNlRGNtCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAAA1pZHhQcmljZUFzRGNtBAAAAApwb29sU3RhdHVzCQABkQAAAAIFAAAAA2NmZwUAAAANaWR4UG9vbFN0YXR1cwQAAAAKbHBFbWlzc2lvbggJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkAA+wAAAABBQAAAARscElkCQABLAAAAAIJAAEsAAAAAgIAAAAGQXNzZXQgCQACWAAAAAEFAAAABGxwSWQCAAAADiBkb2Vzbid0IGV4aXN0AAAACHF1YW50aXR5BAAAAAlhbUJhbGFuY2UDBQAAAAppc0V2YWx1YXRlCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAAB2FtSWRTdHIJAABlAAAAAgkBAAAADWdldEFjY0JhbGFuY2UAAAABBQAAAAdhbUlkU3RyBQAAAAdpbkFtQW10BAAAAAlwckJhbGFuY2UDBQAAAAppc0V2YWx1YXRlCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAAB3BySWRTdHIJAABlAAAAAgkBAAAADWdldEFjY0JhbGFuY2UAAAABBQAAAAdwcklkU3RyBQAAAAdpblByQW10BAAAAA9pbkFtQXNzZXRBbXRYMTgJAQAAAAV0b1gxOAAAAAIFAAAAB2luQW1BbXQFAAAABmFtdERjbQQAAAAPaW5QckFzc2V0QW10WDE4CQEAAAAFdG9YMTgAAAACBQAAAAdpblByQW10BQAAAAhwcmljZURjbQQAAAAMdXNlclByaWNlWDE4CQEAAAAPY2FsY1ByaWNlQmlnSW50AAAAAgUAAAAPaW5QckFzc2V0QW10WDE4BQAAAA9pbkFtQXNzZXRBbXRYMTgEAAAADGFtQmFsYW5jZVgxOAkBAAAABXRvWDE4AAAAAgUAAAAJYW1CYWxhbmNlBQAAAAZhbXREY20EAAAADHByQmFsYW5jZVgxOAkBAAAABXRvWDE4AAAAAgUAAAAJcHJCYWxhbmNlBQAAAAhwcmljZURjbQQAAAADcmVzAwkAAAAAAAACBQAAAApscEVtaXNzaW9uAAAAAAAAAAAABAAAAAtjdXJQcmljZVgxOAUAAAAKemVyb0JpZ0ludAQAAAALc2xpcHBhZ2VYMTgFAAAACnplcm9CaWdJbnQEAAAACGxwQW10WDE4CQAAdgAAAAYJAAE5AAAAAgUAAAAPaW5BbUFzc2V0QW10WDE4BQAAAA9pblByQXNzZXRBbXRYMTgAAAAAAAAAAAAJAAE2AAAAAQAAAAAAAAAABQAAAAAAAAAAAQAAAAAAAAAAAAUAAAAERE9XTgkABRcAAAAFCQEAAAAHZnJvbVgxOAAAAAIFAAAACGxwQW10WDE4BQAAAAZzY2FsZTgJAQAAAAdmcm9tWDE4AAAAAgUAAAAPaW5BbUFzc2V0QW10WDE4BQAAAAZhbXREY20JAQAAAAdmcm9tWDE4AAAAAgUAAAAPaW5QckFzc2V0QW10WDE4BQAAAAhwcmljZURjbQkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIJAAE3AAAAAgUAAAAMcHJCYWxhbmNlWDE4BQAAAA9pblByQXNzZXRBbXRYMTgJAAE3AAAAAgUAAAAMYW1CYWxhbmNlWDE4BQAAAA9pbkFtQXNzZXRBbXRYMTgFAAAAC3NsaXBwYWdlWDE4BAAAAAR0UmVzAwUAAAAKaXNPbmVBc3NldAQAAAANbHBFbWlzc2lvblgxOAkBAAAABXRvWDE4AAAAAgUAAAAKbHBFbWlzc2lvbgUAAAAGc2NhbGU4BAAAAAtzdW1JbkFzc2V0cwkAATcAAAACBQAAAA9pbkFtQXNzZXRBbXRYMTgFAAAAD2luUHJBc3NldEFtdFgxOAQAAAAPc3VtUG9vbEJhbGFuY2VzCQABNwAAAAIFAAAADGFtQmFsYW5jZVgxOAUAAAAMcHJCYWxhbmNlWDE4BAAAAAhscEFtdFgxOAkAATwAAAADBQAAAA1scEVtaXNzaW9uWDE4BQAAAAtzdW1JbkFzc2V0cwUAAAAPc3VtUG9vbEJhbGFuY2VzBAAAAAtjdXJQcmljZVgxOAkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIFAAAADHByQmFsYW5jZVgxOAUAAAAMYW1CYWxhbmNlWDE4CQAFFwAAAAUJAQAAAAdmcm9tWDE4AAAAAgUAAAAIbHBBbXRYMTgFAAAABnNjYWxlOAUAAAAHaW5BbUFtdAUAAAAHaW5QckFtdAUAAAALY3VyUHJpY2VYMTgJAAE2AAAAAQAAAAAAAAAAAAQAAAALY3VyUHJpY2VYMTgJAQAAAA9jYWxjUHJpY2VCaWdJbnQAAAACBQAAAAxwckJhbGFuY2VYMTgFAAAADGFtQmFsYW5jZVgxOAQAAAALc2xpcHBhZ2VYMTgJAAE8AAAAAwkBAAAAA2FicwAAAAEJAAE4AAAAAgUAAAALY3VyUHJpY2VYMTgFAAAADHVzZXJQcmljZVgxOAUAAAAHc2NhbGUxOAUAAAALY3VyUHJpY2VYMTgEAAAAFHNsaXBwYWdlVG9sZXJhbmNlWDE4CQEAAAAFdG9YMTgAAAACBQAAABFzbGlwcGFnZVRvbGVyYW5jZQUAAAAGc2NhbGU4AwMJAQAAAAIhPQAAAAIFAAAAC2N1clByaWNlWDE4BQAAAAp6ZXJvQmlnSW50CQABPwAAAAIFAAAAC3NsaXBwYWdlWDE4BQAAABRzbGlwcGFnZVRvbGVyYW5jZVgxOAcJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAPUHJpY2Ugc2xpcHBhZ2UgCQABpgAAAAEFAAAAC3NsaXBwYWdlWDE4AgAAAB4gZXhjZWVkZWQgdGhlIHBhc3NlZCBsaW1pdCBvZiAJAAGmAAAAAQUAAAAUc2xpcHBhZ2VUb2xlcmFuY2VYMTgEAAAADWxwRW1pc3Npb25YMTgJAQAAAAV0b1gxOAAAAAIFAAAACmxwRW1pc3Npb24FAAAABnNjYWxlOAQAAAAKcHJWaWFBbVgxOAkAATwAAAADBQAAAA9pbkFtQXNzZXRBbXRYMTgFAAAAC2N1clByaWNlWDE4BQAAAAdzY2FsZTE4BAAAAAphbVZpYVByWDE4CQABPAAAAAMFAAAAD2luUHJBc3NldEFtdFgxOAUAAAAHc2NhbGUxOAUAAAALY3VyUHJpY2VYMTgEAAAADGV4cGVjdGVkQW10cwMJAAE/AAAAAgUAAAAKcHJWaWFBbVgxOAUAAAAPaW5QckFzc2V0QW10WDE4CQAFFAAAAAIFAAAACmFtVmlhUHJYMTgFAAAAD2luUHJBc3NldEFtdFgxOAkABRQAAAACBQAAAA9pbkFtQXNzZXRBbXRYMTgFAAAACnByVmlhQW1YMTgEAAAAEWV4cEFtdEFzc2V0QW10WDE4CAUAAAAMZXhwZWN0ZWRBbXRzAAAAAl8xBAAAABNleHBQcmljZUFzc2V0QW10WDE4CAUAAAAMZXhwZWN0ZWRBbXRzAAAAAl8yBAAAAAhscEFtdFgxOAkAATwAAAADBQAAAA1scEVtaXNzaW9uWDE4BQAAABNleHBQcmljZUFzc2V0QW10WDE4BQAAAAxwckJhbGFuY2VYMTgJAAUXAAAABQkBAAAAB2Zyb21YMTgAAAACBQAAAAhscEFtdFgxOAUAAAAGc2NhbGU4CQEAAAAHZnJvbVgxOAAAAAIFAAAAEWV4cEFtdEFzc2V0QW10WDE4BQAAAAZhbXREY20JAQAAAAdmcm9tWDE4AAAAAgUAAAATZXhwUHJpY2VBc3NldEFtdFgxOAUAAAAIcHJpY2VEY20FAAAAC2N1clByaWNlWDE4BQAAAAtzbGlwcGFnZVgxOAUAAAAEdFJlcwQAAAAJY2FsY0xwQW10CAUAAAADcmVzAAAAAl8xBAAAAA5jYWxjQW1Bc3NldFBtdAgFAAAAA3JlcwAAAAJfMgQAAAAOY2FsY1ByQXNzZXRQbXQIBQAAAANyZXMAAAACXzMEAAAACGN1clByaWNlCQEAAAAHZnJvbVgxOAAAAAIIBQAAAANyZXMAAAACXzQFAAAABnNjYWxlOAQAAAAMc2xpcHBhZ2VDYWxjCQEAAAAHZnJvbVgxOAAAAAIIBQAAAANyZXMAAAACXzUFAAAABnNjYWxlOAMJAABnAAAAAgAAAAAAAAAAAAUAAAAJY2FsY0xwQW10CQAAAgAAAAECAAAANkludmFsaWQgY2FsY3VsYXRpb25zLiBMUCBjYWxjdWxhdGVkIGlzIGxlc3MgdGhhbiB6ZXJvLgQAAAAJZW1pdExwQW10AwkBAAAAASEAAAABBQAAAAZlbWl0THAAAAAAAAAAAAAFAAAACWNhbGNMcEFtdAQAAAAGYW1EaWZmCQAAZQAAAAIFAAAAB2luQW1BbXQFAAAADmNhbGNBbUFzc2V0UG10BAAAAAZwckRpZmYJAABlAAAAAgUAAAAHaW5QckFtdAUAAAAOY2FsY1ByQXNzZXRQbXQEAAAAC2NvbW1vblN0YXRlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAMa2V5UHJpY2VMYXN0AAAAAAUAAAAIY3VyUHJpY2UJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAA9rZXlQcmljZUhpc3RvcnkAAAACBQAAAAZoZWlnaHQIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wBQAAAAhjdXJQcmljZQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAASa2V5UHV0QWN0aW9uQnlVc2VyAAAAAgUAAAALdXNlckFkZHJlc3MFAAAABnR4SWQ1OAkBAAAAEWRhdGFQdXRBY3Rpb25JbmZvAAAACgUAAAAOY2FsY0FtQXNzZXRQbXQFAAAADmNhbGNQckFzc2V0UG10BQAAAAllbWl0THBBbXQFAAAACGN1clByaWNlBQAAABFzbGlwcGFnZVRvbGVyYW5jZQUAAAAMc2xpcHBhZ2VDYWxjBQAAAAZoZWlnaHQIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wBQAAAAZhbURpZmYFAAAABnByRGlmZgUAAAADbmlsCQAFHwAAAA0FAAAACWNhbGNMcEFtdAUAAAAJZW1pdExwQW10BQAAAAhjdXJQcmljZQUAAAAJYW1CYWxhbmNlBQAAAAlwckJhbGFuY2UFAAAACmxwRW1pc3Npb24FAAAABGxwSWQFAAAACnBvb2xTdGF0dXMFAAAAC2NvbW1vblN0YXRlBQAAAAZhbURpZmYFAAAABnByRGlmZgUAAAAGaW5BbUlkBQAAAAZpblBySWQBAAAAG3ZhbGlkYXRlTWF0Y2hlck9yZGVyQWxsb3dlZAAAAAEAAAAFb3JkZXIEAAAAA2NmZwkBAAAADWdldFBvb2xDb25maWcAAAAABAAAAAphbXRBc3NldElkCQABkQAAAAIFAAAAA2NmZwUAAAAJaWR4QW1Bc0lkBAAAAAxwcmljZUFzc2V0SWQJAAGRAAAAAgUAAAADY2ZnBQAAAAlpZHhQckFzSWQEAAAACnBvb2xTdGF0dXMJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAANjZmcFAAAADWlkeFBvb2xTdGF0dXMEAAAAC2FtdEFzc2V0RGNtCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAADY2ZnBQAAAAtpZHhBbXRBc0RjbQQAAAANcHJpY2VBc3NldERjbQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAA2NmZwUAAAANaWR4UHJpY2VBc0RjbQQAAAASYWNjQW10QXNzZXRCYWxhbmNlCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAACmFtdEFzc2V0SWQEAAAAFGFjY1ByaWNlQXNzZXRCYWxhbmNlCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAADHByaWNlQXNzZXRJZAQAAAALY3VyUHJpY2VYMTgDCQAAAAAAAAIIBQAAAAVvcmRlcgAAAAlvcmRlclR5cGUFAAAAA0J1eQkBAAAAEHByaXZhdGVDYWxjUHJpY2UAAAAEBQAAAAthbXRBc3NldERjbQUAAAANcHJpY2VBc3NldERjbQkAAGQAAAACBQAAABJhY2NBbXRBc3NldEJhbGFuY2UIBQAAAAVvcmRlcgAAAAZhbW91bnQFAAAAFGFjY1ByaWNlQXNzZXRCYWxhbmNlCQEAAAAQcHJpdmF0ZUNhbGNQcmljZQAAAAQFAAAAC2FtdEFzc2V0RGNtBQAAAA1wcmljZUFzc2V0RGNtCQAAZQAAAAIFAAAAEmFjY0FtdEFzc2V0QmFsYW5jZQgFAAAABW9yZGVyAAAABmFtb3VudAUAAAAUYWNjUHJpY2VBc3NldEJhbGFuY2UEAAAACGN1clByaWNlCQEAAAAHZnJvbVgxOAAAAAIFAAAAC2N1clByaWNlWDE4BQAAAAZzY2FsZTgDAwMJAQAAABBpc0dsb2JhbFNodXRkb3duAAAAAAYJAAAAAAAAAgUAAAAKcG9vbFN0YXR1cwUAAAATUG9vbE1hdGNoZXJEaXNhYmxlZAYJAAAAAAAAAgUAAAAKcG9vbFN0YXR1cwUAAAAMUG9vbFNodXRkb3duCQAAAgAAAAECAAAAHEV4Y2hhbmdlIG9wZXJhdGlvbnMgZGlzYWJsZWQEAAAADW9yZGVyQW10QXNzZXQICAUAAAAFb3JkZXIAAAAJYXNzZXRQYWlyAAAAC2Ftb3VudEFzc2V0BAAAABBvcmRlckFtdEFzc2V0U3RyAwkAAAAAAAACBQAAAA1vcmRlckFtdEFzc2V0BQAAAAR1bml0AgAAAAVXQVZFUwkAAlgAAAABCQEAAAAFdmFsdWUAAAABBQAAAA1vcmRlckFtdEFzc2V0BAAAAA9vcmRlclByaWNlQXNzZXQICAUAAAAFb3JkZXIAAAAJYXNzZXRQYWlyAAAACnByaWNlQXNzZXQEAAAAEm9yZGVyUHJpY2VBc3NldFN0cgMJAAAAAAAAAgUAAAAPb3JkZXJQcmljZUFzc2V0BQAAAAR1bml0AgAAAAVXQVZFUwkAAlgAAAABCQEAAAAFdmFsdWUAAAABBQAAAA9vcmRlclByaWNlQXNzZXQDAwkBAAAAAiE9AAAAAgUAAAAQb3JkZXJBbXRBc3NldFN0cgUAAAAKYW10QXNzZXRJZAYJ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AAIJAAE5AAAAAgkAATkAAAACCQABNgAAAAEA//////////wFAAAAA0FtQgUAAAAHZGl2UGFydAUAAAABTQAAABEAAAABaQEAAAALY29uc3RydWN0b3IAAAACAAAAD2ZhY3RvcnlDb250cmFjdAAAABBtYW5hZ2VyUHVibGljS2V5AwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzCQAAAgAAAAECAAAAEnBlcm1pc3Npb25zIGRlbmllZAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAALa2V5RmFjdENudHIAAAAABQAAAA9mYWN0b3J5Q29udHJhY3QJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAE2tleU1hbmFnZXJQdWJsaWNLZXkAAAAABQAAABBtYW5hZ2VyUHVibGljS2V5BQAAAANuaWwAAAABaQEAAAADcHV0AAAAAgAAAAhzbGlwcGFnZQAAAAlhdXRvU3Rha2UEAAAAB2ZhY3RDZmcJAQAAABBnZXRGYWN0b3J5Q29uZmlnAAAAAAQAAAALc3Rha2luZ0NudHIJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABCYAAAABCQABkQAAAAIFAAAAB2ZhY3RDZmcFAAAAD2lkeEZhY3RTdGFrQ250cgIAAAAhRXJyb3IuIEluY29ycmVjdCBzdGFraW5nIGFkZHJlc3MuBAAAAAhzbGlwQ250cgkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEJgAAAAEJAAGRAAAAAgUAAAAHZmFjdENmZwUAAAAQaWR4RmFjdFNsaXBwQ250cgIAAAArRXJyb3IuIEluY29ycmVjdCBzbGlwcGFnZSBjb250cmFjdCBhZGRyZXNzLgMJAABmAAAAAgAAAAAAAAAAAAUAAAAIc2xpcHBhZ2UJAAACAAAAAQIAAAAgSW52YWxpZCBzbGlwcGFnZVRvbGVyYW5jZSBwYXNzZWQEAAAABmVzdFB1dAkBAAAACWNvbW1vblB1dAAAAAMFAAAAAWkFAAAACHNsaXBwYWdlBgQAAAAJZW1pdExwQW10CAUAAAAGZXN0UHV0AAAAAl8yBAAAAAlscEFzc2V0SWQIBQAAAAZlc3RQdXQAAAACXzcEAAAA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AAAAAAAAAAQAAAAKcG10QXNzZXRJZAkAAlgAAAABCQEAAAAFdmFsdWUAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQEAAAABnBtdEFtdAgFAAAAA3BtdAAAAAZhbW91bnQEAAAADmFtQXNzZXRTd2FwWDE4CQEAAAAFdG9YMTgAAAACBQAAAAtpbkFtdEFtb3VudAUAAAAFYW1EY20EAAAADnByQXNzZXRTd2FwWDE4CQEAAAAFdG9YMTgAAAACBQAAAAppblByQW1vdW50BQAAAAVwckRjbQQAAAAHaW5QcmljZQkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIFAAAADnByQXNzZXRTd2FwWDE4BQAAAA5hbUFzc2V0U3dhcFgxOAQAAAAJYW1CYWxhbmNlCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAABGFtSWQEAAAADGFtQmFsYW5jZVgxOAkBAAAABXRvWDE4AAAAAgUAAAAJYW1CYWxhbmNlBQAAAAVhbURjbQQAAAAJcHJCYWxhbmNlCQEAAAANZ2V0QWNjQmFsYW5jZQAAAAEFAAAABHBySWQEAAAADHByQmFsYW5jZVgxOAkBAAAABXRvWDE4AAAAAgUAAAAJcHJCYWxhbmNlBQAAAAVwckRjbQQAAAAEZEN1cgkBAAAABWNhbGNEAAAABQUAAAAMYW1CYWxhbmNlWDE4BQAAAAVhbURjbQUAAAAMcHJCYWxhbmNlWDE4BQAAAAVwckRjbQAAAAAAAAAAMgQAAAAHaXNWYWxpZAMJAAAAAAAAAgUAAAAKcG10QXNzZXRJZAUAAAAEYW1JZAQAAAAJcG10QW10WDE4CQEAAAAFdG9YMTgAAAACBQAAAAZwbXRBbXQFAAAABWFtRGNtBAAAAAdwckFkaWZmBQAAAA5wckFzc2V0U3dhcFgxOAQAAAAHYW1BZGlmZgkAATgAAAACBQAAAAlwbXRBbXRYMTgFAAAADmFtQXNzZXRTd2FwWDE4BAAAAARkTmV3CQEAAAAFY2FsY0QAAAAFCQABNwAAAAIFAAAADGFtQmFsYW5jZVgxOAUAAAAHYW1BZGlmZgUAAAAFYW1EY20JAAE4AAAAAgUAAAAMcHJCYWxhbmNlWDE4BQAAAAdwckFkaWZmBQAAAAVwckRjbQAAAAAAAAAAMgMGCQAAAgAAAAEJAAEs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BQAAAARhbUlkBAAAABdwclN3b3BQYXJ0SW5BbW91bnRBc3NldAkAAGUAAAACBQAAAA9yZXN1bHRBbXRBbW91bnQFAAAACG91dEFtQW10BAAAAAdjb252UmVzCQABPAAAAAMJAQAAAAV0b1gxOAAAAAIFAAAAF3ByU3dvcFBhcnRJbkFtb3VudEFzc2V0BQAAAAVhbURjbQUAAAAMc3dhcFByaWNlWDE4BQAAAAdzY2FsZTE4BAAAAAtwckFzc2V0RGlmZgkAATwAAAADCQABOAAAAAIFAAAAB2NvbnZSZXMFAAAADnByQXNzZXRTd2FwWDE4BQAAAAxzY2FsZThCaWdJbnQFAAAADnByQXNzZXRTd2FwWDE4BAAAAAhhbXRBc1JlcwkBAAAAB2Zyb21YMTgAAAACCQABPAAAAAMJAQAAAAV0b1gxOAAAAAIFAAAACG91dFByQW10BQAAAAVwckRjbQUAAAAHc2NhbGUxOAUAAAAMc3dhcFByaWNlWDE4BQAAAAVhbURjbQMDCQABPwAAAAIFAAAAC3ByQXNzZXREaWZmBQAAAAljYWxjRXJyb3IGCQABPwAAAAIJAAE+AAAAAQUAAAAJY2FsY0Vycm9yBQAAAAtwckFzc2V0RGlmZgkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAABtTbGlwcGFnZSBleGVlZGVkIHRoZSB2YWx1ZSAJAAGmAAAAAQUAAAAJY2FsY0Vycm9yAgAAAA4gYW5kIGVxdWFsIHRvIAkAAaYAAAABBQAAAAtwckFzc2V0RGlmZgkAAGQAAAACBQAAAAhhbXRBc1JlcwUAAAAIb3V0QW1BbXQEAAAAFmFtU3dvcFBhcnRJblByaWNlQXNzZXQJAABlAAAAAgUAAAAOcmVzdWx0UHJBbW91bnQFAAAACG91dFByQW10BAAAAAdjb252UmVzCQABPAAAAAMJAQAAAAV0b1gxOAAAAAIFAAAAFmFtU3dvcFBhcnRJblByaWNlQXNzZXQFAAAABWFtRGNtBQAAAAdzY2FsZTE4BQAAAAxzd2FwUHJpY2VYMTgEAAAAB3ByQXNSZXMJAQAAAAdmcm9tWDE4AAAAAgkAATwAAAADCQEAAAAFdG9YMTgAAAACBQAAAAhvdXRBbUFtdAUAAAAFYW1EY20FAAAADHN3YXBQcmljZVgxOAUAAAAHc2NhbGUxOAUAAAAFcHJEY20EAAAAC2FtQXNzZXREaWZmCQABPAAAAAMJAAE4AAAAAgUAAAAHY29udlJlcwUAAAAOYW1Bc3NldFN3YXBYMTgFAAAADHNjYWxlOEJpZ0ludAUAAAAOYW1Bc3NldFN3YXBYMTgDAwkAAT8AAAACBQAAAAthbUFzc2V0RGlmZgUAAAAJY2FsY0Vycm9yBgkAAT8AAAACCQABPgAAAAEFAAAACWNhbGNFcnJvcgUAAAALYW1Bc3NldERpZmYJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAbU2xpcHBhZ2UgZXhlZWRlZCB0aGUgdmFsdWUgCQABpgAAAAEFAAAACWNhbGNFcnJvcgIAAAAOIGFuZCBlcXVhbCB0byAJAAGmAAAAAQUAAAALYW1Bc3NldERpZmYJAABkAAAAAgUAAAAHcHJBc1JlcwUAAAAIb3V0UHJBbXQEAAAACWFtQmFsYW5jZQkBAAAADWdldEFjY0JhbGFuY2UAAAABBQAAAARhbUlkBAAAAAxhbUJhbGFuY2VYMTgJAQAAAAV0b1gxOAAAAAIFAAAACWFtQmFsYW5jZQUAAAAFYW1EY20EAAAACXByQmFsYW5jZQkBAAAADWdldEFjY0JhbGFuY2UAAAABBQAAAARwcklkBAAAAAxwckJhbGFuY2VYMTgJAQAAAAV0b1gxOAAAAAIFAAAACXByQmFsYW5jZQUAAAAFcHJEY20EAAAAC2N1clByaWNlWDE4CQEAAAAPY2FsY1ByaWNlQmlnSW50AAAAAgUAAAAMcHJCYWxhbmNlWDE4BQAAAAxhbUJhbGFuY2VYMTgEAAAACGN1clByaWNlCQEAAAAHZnJvbVgxOAAAAAIFAAAAC2N1clByaWNlWDE4BQAAAAZzY2FsZTgEAAAABXN0YXRlCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAAC3VzZXJBZGRyZXNzBQAAAAZ0b3RhbFIDCQAAAAAAAAIFAAAADXJlc3VsdEFzc2V0SWQCAAAABVdBVkVTBQAAAAR1bml0CQACWQAAAAEFAAAADXJlc3VsdEFzc2V0SWQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAEmtleUdldEFjdGlvbkJ5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AgUAAAAGcHJpY2VzAAAAAAAAAAABCQAETAAAAAIJAAGmAAAAAQkAAZEAAAACBQAAAAZwcmljZXMAAAAAAAAAAAIFAAAAA25pbAAAAAFpAQAAABZmcm9tWDE4V3JhcHBlclJFQURPTkxZAAAAAgAAAAN2YWwAAAAPcmVzdWx0U2NhbGVNdWx0CQAFFAAAAAIFAAAAA25pbAkBAAAAB2Zyb21YMTgAAAACCQABpwAAAAEFAAAAA3ZhbAUAAAAPcmVzdWx0U2NhbGVNdWx0AAAAAWkBAAAAFHRvWDE4V3JhcHBlclJFQURPTkxZAAAAAgAAAAdvcmlnVmFsAAAADW9yaWdTY2FsZU11bHQJAAUUAAAAAgUAAAADbmlsCQABpgAAAAEJAQAAAAV0b1gxOAAAAAIFAAAAB29yaWdWYWwFAAAADW9yaWdTY2FsZU11bHQAAAABaQEAAAAeY2FsY1ByaWNlQmlnSW50V3JhcHBlclJFQURPTkxZAAAAAgAAAAhwckFtdFgxOAAAAAhhbUFtdFgxOAkABRQAAAACBQAAAANuaWwJAAGmAAAAAQkBAAAAD2NhbGNQcmljZUJpZ0ludAAAAAIJAAGnAAAAAQUAAAAIcHJBbXRYMTgJAAGnAAAAAQUAAAAIYW1BbXRYMTgAAAABaQEAAAAjZXN0aW1hdGVQdXRPcGVyYXRpb25XcmFwcGVyUkVBRE9OTFkAAAAKAAAABnR4SWQ1OAAAAAhzbGlwcGFnZQAAAAdpbkFtQW10AAAABmluQW1JZAAAAAdpblByQW10AAAABmluUHJJZAAAAAt1c2VyQWRkcmVzcwAAAAppc0V2YWx1YXRlAAAABmVtaXRMcAAAAAppc09uZUFzc2V0CQAFFAAAAAIFAAAAA25pbAkBAAAAFGVzdGltYXRlUHV0T3BlcmF0aW9uAAAACgUAAAAGdHhJZDU4BQAAAAhzbGlwcGFnZQUAAAAHaW5BbUFtdAUAAAAGaW5BbUlkBQAAAAdpblByQW10BQAAAAZpblBySWQFAAAAC3VzZXJBZGRyZXNzBQAAAAppc0V2YWx1YXRlBQAAAAZlbWl0THAFAAAACmlzT25lQXNzZXQAAAABaQEAAAAjZXN0aW1hdGVHZXRPcGVyYXRpb25XcmFwcGVyUkVBRE9OTFkAAAAEAAAABnR4SWQ1OAAAAApwbXRBc3NldElkAAAACHBtdExwQW10AAAAC3VzZXJBZGRyZXNzBAAAAANyZXMJAQAAABRlc3RpbWF0ZUdldE9wZXJhdGlvbgAAAAQFAAAABnR4SWQ1OAUAAAAKcG10QXNzZXRJZAUAAAAIcG10THBBbXQJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAAC3VzZXJBZGRyZXNzCQAFFAAAAAIFAAAAA25pbAkABRwAAAAKCAUAAAADcmVzAAAAAl8xCAUAAAADcmVzAAAAAl8yCAUAAAADcmVzAAAAAl8zCAUAAAADcmVzAAAAAl80CAUAAAADcmVzAAAAAl81CAUAAAADcmVzAAAAAl82CAUAAAADcmVzAAAAAl83CQABpgAAAAEIBQAAAANyZXMAAAACXzgIBQAAAANyZXMAAAACXzkIBQAAAANyZXMAAAADXzEwAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAHJG1hdGNoMAUAAAACdHgDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABU9yZGVyBAAAAAVvcmRlcgUAAAAHJG1hdGNoMAQAAAAKbWF0Y2hlclB1YgkBAAAAE2dldE1hdGNoZXJQdWJPckZhaWwAAAAABAAAAApvcmRlclZhbGlkCQEAAAAbdmFsaWRhdGVNYXRjaGVyT3JkZXJBbGxvd2VkAAAAAQUAAAAFb3JkZXIEAAAAC3NlbmRlclZhbGlkCQAB9AAAAAMIBQAAAAVvcmRlcgAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAABW9yZGVyAAAABnByb29mcwAAAAAAAAAAAAgFAAAABW9yZGVyAAAAD3NlbmRlclB1YmxpY0tleQQAAAAMbWF0Y2hlclZhbGlkCQAB9AAAAAMIBQAAAAVvcmRlcgAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAABW9yZGVyAAAABnByb29mcwAAAAAAAAAAAQUAAAAKbWF0Y2hlclB1YgMDAwUAAAAKb3JkZXJWYWxpZAUAAAALc2VuZGVyVmFsaWQHBQAAAAxtYXRjaGVyVmFsaWQHBgkBAAAAD3Rocm93T3JkZXJFcnJvcgAAAAMFAAAACm9yZGVyVmFsaWQFAAAAC3NlbmRlclZhbGlkBQAAAAxtYXRjaGVyVmFsaWQEAAAADW1hbmFnZXJQdWJsaWMJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQdAAAAAgUAAAAEdGhpcwkBAAAAE2tleU1hbmFnZXJQdWJsaWNLZXkAAAAABQAAAAVFTVBUWQMJAAAAAAAAAgUAAAANbWFuYWdlclB1YmxpYwUAAAAFRU1QVFkJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5CQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAkAAlkAAAABBQAAAA1tYW5hZ2VyUHVibGljOPnLGQ==", "chainId": 84, "height": 1844282, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 8H9sdnZngpi31dMnsgTzNGJXtTqjkgcUMSwJ14VvWh4Q Next: A4dWsfNTcv9eMyDMVcjVi6gibE39ZHRJ8yQLh4tsieFZ Diff:
OldNewDifferences
477477 let dF = (dD - dy)
478478 let dG = cP((bu + dF), bp, (bw - dE), bq, 50)
479479 if (true)
480- then throw(((((((((((("dCur = " + toString(dB)) + " dNew = ") + toString(dG)) + " amBalanceX18 - amAdiff = ") + toString((bu - dF))) + " prBalanceX18 + prAdiff= ") + toString((bw + dE))) + "amBalanceX18 = ") + toString(bu)) + "prBalanceX18 = ") + toString(bw)))
480+ then throw(((((((((((("dCur = " + toString(dB)) + " dNew = ") + toString(dG)) + " amBalanceX18 + amAdiff = ") + toString((bu - dF))) + " prBalanceX18 - prAdiff= ") + toString((bw + dE))) + "amBalanceX18 = ") + toString(bu)) + "prBalanceX18 = ") + toString(bw)))
481481 else if ((dG > dB))
482482 then throw("Incorrect argiments passed. Deposit lead to D decrease.")
483483 else true
486486 let dH = y(cJ, bq)
487487 let dE = (dz - dH)
488488 let dF = dy
489- let dG = cP((bu + dF), bp, (bw - dE), bq, 50)
489+ let dG = cP((bu - dF), bp, (bw + dE), bq, 50)
490490 if (true)
491- then throw(((("dCur = " + toString(dB)) + " dNew") + toString(dG)))
491+ then throw(((((((((((("dCur = " + toString(dB)) + " dNew = ") + toString(dG)) + " amBalanceX18 - amAdiff = ") + toString((bu - dF))) + " prBalanceX18 + prAdiff= ") + toString((bw + dE))) + "amBalanceX18 = ") + toString(bu)) + "prBalanceX18 = ") + toString(bw)))
492492 else if ((dG > dB))
493493 then throw("Incorrect argiments passed. Deposit lead to D decrease.")
494494 else true
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(1000000)
1111
1212 let e = toBigInt(1000000000000000000)
1313
1414 let f = toBigInt(0)
1515
1616 let g = toBigInt(1)
1717
1818 let h = "__"
1919
2020 let i = ""
2121
2222 let j = 1
2323
2424 let k = 2
2525
2626 let l = 3
2727
2828 let m = 4
2929
3030 let n = 1
3131
3232 let o = 2
3333
3434 let p = 3
3535
3636 let q = 4
3737
3838 let r = 5
3939
4040 let s = 6
4141
4242 let t = 7
4343
4444 let u = 8
4545
4646 let v = 9
4747
4848 let w = 1
4949
5050 let x = 7
5151
5252 func y (z,A) = fraction(toBigInt(z), e, toBigInt(A))
5353
5454
5555 func B (C,D) = toInt(fraction(C, toBigInt(D), e))
5656
5757
5858 func E (F,G,H) = fraction(F, G, H)
5959
6060
6161 func I (C) = if ((f > C))
6262 then -(C)
6363 else C
6464
6565
6666 func J () = "%s__factoryContract"
6767
6868
6969 func K () = "%s__managerPublicKey"
7070
7171
7272 func L () = "%s%s__price__last"
7373
7474
7575 func M (N,O) = makeString(["%s%s%d%d__price__history", toString(N), toString(O)], h)
7676
7777
7878 func P (Q,R) = ((("%s%s%s__P__" + Q) + "__") + R)
7979
8080
8181 func S (Q,R) = ((("%s%s%s__G__" + Q) + "__") + R)
8282
8383
8484 func T () = "%s__amountAsset"
8585
8686
8787 func U () = "%s__priceAsset"
8888
8989
9090 func V () = "%s__factoryConfig"
9191
9292
9393 func W () = "%s%s__matcher__publicKey"
9494
9595
9696 func X (Y,Z) = (((("%d%d%s__" + Y) + "__") + Z) + "__config")
9797
9898
9999 func aa (ab) = ("%s%s%s__mappings__baseAsset2internalId__" + ab)
100100
101101
102102 func ac () = "%s__shutdown"
103103
104104
105105 func ad (ae) = ("%s%s__poolWeight__" + ae)
106106
107107
108108 func af (ag,ah,ai) = throw(((((("order validation failed: orderValid=" + toString(ag)) + " senderValid=") + toString(ah)) + " matcherValid=") + toString(ai)))
109109
110110
111111 func aj (ak,al) = valueOrErrorMessage(getString(ak, al), makeString(["mandatory ", toString(ak), ".", al, " is not defined"], ""))
112112
113113
114114 func am (ak,al) = valueOrErrorMessage(getInteger(ak, al), makeString(["mandatory ", toString(ak), ".", al, " is not defined"], ""))
115115
116116
117117 let an = addressFromStringValue(aj(this, J()))
118118
119119 func ao () = valueOrElse(getBoolean(an, ac()), false)
120120
121121
122122 func ap () = fromBase58String(aj(an, W()))
123123
124124
125125 func aq () = {
126126 let ar = aj(this, T())
127127 let as = aj(this, U())
128128 let at = am(an, aa(as))
129129 let au = am(an, aa(ar))
130130 split(aj(an, X(toString(au), toString(at))), h)
131131 }
132132
133133
134134 func av () = split(aj(an, V()), h)
135135
136136
137137 func aw (ax,ay,az,aA,aB,aC,aD,aE,aF,aG) = makeString(["%d%d%d%d%d%d%d%d%d%d", toString(ax), toString(ay), toString(az), toString(aA), toString(aB), toString(aC), toString(aD), toString(aE), toString(aF), toString(aG)], h)
138138
139139
140140 func aH (aI,aJ,aK,aA,aD,aE) = makeString(["%d%d%d%d%d%d", toString(aI), toString(aJ), toString(aK), toString(aA), toString(aD), toString(aE)], h)
141141
142142
143143 func aL (aM) = if ((aM == "WAVES"))
144144 then wavesBalance(this).available
145145 else assetBalance(this, fromBase58String(aM))
146146
147147
148148 func aN (aO,aP) = fraction(aO, e, aP)
149149
150150
151151 func aQ (aR,aS,aT,aU) = {
152152 let aV = y(aT, aR)
153153 let aW = y(aU, aS)
154154 aN(aW, aV)
155155 }
156156
157157
158158 func aX (aT,aU,aY) = {
159159 let aZ = aq()
160160 let ba = parseIntValue(aZ[s])
161161 let bb = parseIntValue(aZ[t])
162162 let bc = aQ(ba, bb, aT, aU)
163163 let aP = y(aT, ba)
164164 let aO = y(aU, bb)
165165 let bd = y(aY, b)
166166 let be = aN(aP, bd)
167167 let bf = aN(aO, bd)
168168 [bc, be, bf]
169169 }
170170
171171
172172 func bg (aT,aU,aY) = {
173173 let bh = aX(aT, aU, aY)
174174 [B(bh[0], b), B(bh[1], b), B(bh[2], b)]
175175 }
176176
177177
178178 func bi (bj,bk,bl,Q) = {
179179 let aZ = aq()
180180 let bm = aZ[p]
181181 let bn = aZ[q]
182182 let bo = aZ[r]
183183 let bp = parseIntValue(aZ[s])
184184 let bq = parseIntValue(aZ[t])
185185 let br = aZ[o]
186186 let bs = valueOrErrorMessage(assetInfo(fromBase58String(bm)), (("Asset " + bm) + " doesn't exist")).quantity
187187 if ((bm != bk))
188188 then throw("Invalid asset passed.")
189189 else {
190190 let bt = aL(bn)
191191 let bu = y(bt, bp)
192192 let bv = aL(bo)
193193 let bw = y(bv, bq)
194194 let bx = aN(bw, bu)
195195 let by = B(bx, b)
196196 let bz = y(bl, b)
197197 let bA = y(bs, b)
198198 let bB = fraction(bu, bz, bA)
199199 let bC = fraction(bw, bz, bA)
200200 let bD = B(bB, bp)
201201 let bE = B(bC, bq)
202202 let bF = if ((bj == ""))
203203 then nil
204204 else [ScriptTransfer(Q, bD, if ((bn == "WAVES"))
205205 then unit
206206 else fromBase58String(bn)), ScriptTransfer(Q, bE, if ((bo == "WAVES"))
207207 then unit
208208 else fromBase58String(bo)), StringEntry(S(toString(Q), bj), aH(bD, bE, bl, by, height, lastBlock.timestamp)), IntegerEntry(L(), by), IntegerEntry(M(height, lastBlock.timestamp), by)]
209209 $Tuple10(bD, bE, bn, bo, bt, bv, bs, bx, br, bF)
210210 }
211211 }
212212
213213
214214 func bG (bj,bH,bI,bJ,bK,bL,Q,bM,bN,bO) = {
215215 let aZ = aq()
216216 let bm = fromBase58String(aZ[p])
217217 let bP = aZ[q]
218218 let bQ = aZ[r]
219219 let bR = aZ[u]
220220 let bS = aZ[v]
221221 let bT = parseIntValue(aZ[s])
222222 let bU = parseIntValue(aZ[t])
223223 let br = aZ[o]
224224 let bs = valueOrErrorMessage(assetInfo(bm), (("Asset " + toBase58String(bm)) + " doesn't exist")).quantity
225225 let bt = if (bM)
226226 then aL(bP)
227227 else (aL(bP) - bI)
228228 let bv = if (bM)
229229 then aL(bQ)
230230 else (aL(bQ) - bK)
231231 let bV = y(bI, bT)
232232 let bW = y(bK, bU)
233233 let bX = aN(bW, bV)
234234 let bu = y(bt, bT)
235235 let bw = y(bv, bU)
236236 let bY = if ((bs == 0))
237237 then {
238238 let bx = f
239239 let bZ = f
240240 let bd = pow((bV * bW), 0, toBigInt(5), 1, 0, DOWN)
241241 $Tuple5(B(bd, b), B(bV, bT), B(bW, bU), aN((bw + bW), (bu + bV)), bZ)
242242 }
243243 else {
244244 let ca = if (bO)
245245 then {
246246 let bA = y(bs, b)
247247 let cb = (bV + bW)
248248 let cc = (bu + bw)
249249 let bd = fraction(bA, cb, cc)
250250 let bx = aN(bw, bu)
251251 $Tuple5(B(bd, b), bI, bK, bx, toBigInt(0))
252252 }
253253 else {
254254 let bx = aN(bw, bu)
255255 let bZ = fraction(I((bx - bX)), e, bx)
256256 let cd = y(bH, b)
257257 if (if ((bx != f))
258258 then (bZ > cd)
259259 else false)
260260 then throw(((("Price slippage " + toString(bZ)) + " exceeded the passed limit of ") + toString(cd)))
261261 else {
262262 let bA = y(bs, b)
263263 let ce = fraction(bV, bx, e)
264264 let cf = fraction(bW, e, bx)
265265 let cg = if ((ce > bW))
266266 then $Tuple2(cf, bW)
267267 else $Tuple2(bV, ce)
268268 let ch = cg._1
269269 let ci = cg._2
270270 let bd = fraction(bA, ci, bw)
271271 $Tuple5(B(bd, b), B(ch, bT), B(ci, bU), bx, bZ)
272272 }
273273 }
274274 ca
275275 }
276276 let cj = bY._1
277277 let ck = bY._2
278278 let cl = bY._3
279279 let by = B(bY._4, b)
280280 let cm = B(bY._5, b)
281281 if ((0 >= cj))
282282 then throw("Invalid calculations. LP calculated is less than zero.")
283283 else {
284284 let cn = if (!(bN))
285285 then 0
286286 else cj
287287 let co = (bI - ck)
288288 let cp = (bK - cl)
289289 let cq = [IntegerEntry(L(), by), IntegerEntry(M(height, lastBlock.timestamp), by), StringEntry(P(Q, bj), aw(ck, cl, cn, by, bH, cm, height, lastBlock.timestamp, co, cp))]
290290 $Tuple13(cj, cn, by, bt, bv, bs, bm, br, cq, co, cp, bJ, bL)
291291 }
292292 }
293293
294294
295295 func cr (cs) = {
296296 let aZ = aq()
297297 let ct = aZ[q]
298298 let cu = aZ[r]
299299 let br = parseIntValue(aZ[o])
300300 let cv = parseIntValue(aZ[s])
301301 let cw = parseIntValue(aZ[t])
302302 let cx = aL(ct)
303303 let cy = aL(cu)
304304 let bx = if ((cs.orderType == Buy))
305305 then aQ(cv, cw, (cx + cs.amount), cy)
306306 else aQ(cv, cw, (cx - cs.amount), cy)
307307 let by = B(bx, b)
308308 if (if (if (ao())
309309 then true
310310 else (br == l))
311311 then true
312312 else (br == m))
313313 then throw("Exchange operations disabled")
314314 else {
315315 let cz = cs.assetPair.amountAsset
316316 let cA = if ((cz == unit))
317317 then "WAVES"
318318 else toBase58String(value(cz))
319319 let cB = cs.assetPair.priceAsset
320320 let cC = if ((cB == unit))
321321 then "WAVES"
322322 else toBase58String(value(cB))
323323 if (if ((cA != ct))
324324 then true
325325 else (cC != cu))
326326 then throw("Wrong order assets.")
327327 else {
328328 let cD = cs.price
329329 let bU = fraction(b, cw, cv)
330330 let cE = E(cD, b, bU)
331331 let cF = if ((cs.orderType == Buy))
332332 then (by >= cE)
333333 else (cE >= by)
334334 true
335335 }
336336 }
337337 }
338338
339339
340340 func cG (cH) = if ((size(cH.payments) != 1))
341341 then throw("exactly 1 payment is expected")
342342 else {
343343 let cI = value(cH.payments[0])
344344 let bk = value(cI.assetId)
345345 let cJ = cI.amount
346346 let bY = bi(toBase58String(cH.transactionId), toBase58String(bk), cJ, cH.caller)
347347 let bD = bY._1
348348 let bE = bY._2
349349 let br = parseIntValue(bY._9)
350350 let bF = bY._10
351351 if (if (ao())
352352 then true
353353 else (br == m))
354354 then throw(("Get operation is blocked by admin. Status = " + toString(br)))
355355 else $Tuple5(bD, bE, cJ, bk, bF)
356356 }
357357
358358
359359 func cK (cH,bH,bN) = if ((size(cH.payments) != 2))
360360 then throw("exactly 2 payments are expected")
361361 else {
362362 let cL = value(cH.payments[0])
363363 let cM = value(cH.payments[1])
364364 let cN = bG(toBase58String(cH.transactionId), bH, cL.amount, cL.assetId, cM.amount, cM.assetId, toString(cH.caller), false, bN, false)
365365 let cO = parseIntValue(cN._8)
366366 if (if (if (ao())
367367 then true
368368 else (cO == k))
369369 then true
370370 else (cO == m))
371371 then throw(("Put operation is blocked by admin. Status = " + toString(cO)))
372372 else cN
373373 }
374374
375375
376376 func cP (cQ,cR,cS,cT,cU) = {
377377 let cV = toBigInt(cU)
378378 let cW = toBigInt(4)
379379 let cX = toBigInt(2)
380380 let cY = toBigInt(3)
381381 let cZ = (cQ + cS)
382382 let da = fraction(cQ, cS, e)
383383 let db = ((cW * cV) - g)
384384 let dc = (((cV * cV) * cZ) * cZ)
385385 let dd = (da * pow((db / cY), 0, cY, 0, 0, DOWN))
386386 let de = ((cV * da) * cZ)
387387 let df = (da * pow((dd + dc), 0, toBigInt(5), 1, 0, DOWN))
388388 let dg = (cX * pow((de + df), 0, toBigInt(333), 3, 0, DOWN))
389389 let dh = (db / (cY * dg))
390390 (((toBigInt(-4) * da) * dh) + dg)
391391 }
392392
393393
394394 @Callable(cH)
395395 func constructor (an,di) = if ((cH.caller != this))
396396 then throw("permissions denied")
397397 else [StringEntry(J(), an), StringEntry(K(), di)]
398398
399399
400400
401401 @Callable(cH)
402402 func put (dj,dk) = {
403403 let dl = av()
404404 let dm = valueOrErrorMessage(addressFromString(dl[w]), "Error. Incorrect staking address.")
405405 let dn = valueOrErrorMessage(addressFromString(dl[x]), "Error. Incorrect slippage contract address.")
406406 if ((0 > dj))
407407 then throw("Invalid slippageTolerance passed")
408408 else {
409409 let cN = cK(cH, dj, true)
410410 let cn = cN._2
411411 let do = cN._7
412412 let bF = cN._9
413413 let co = cN._10
414414 let cp = cN._11
415415 let bn = cN._12
416416 let bo = cN._13
417417 let dp = invoke(an, "emit", [cn], nil)
418418 if ((dp == dp))
419419 then {
420420 let dq = if ((co > 0))
421421 then invoke(dn, "put", nil, [AttachedPayment(bn, co)])
422422 else nil
423423 if ((dq == dq))
424424 then {
425425 let dr = if ((cp > 0))
426426 then invoke(dn, "put", nil, [AttachedPayment(bo, cp)])
427427 else nil
428428 if ((dr == dr))
429429 then {
430430 let ds = if (dk)
431431 then {
432432 let dt = invoke(dm, "stake", nil, [AttachedPayment(do, cn)])
433433 if ((dt == dt))
434434 then nil
435435 else throw("Strict value is not equal to itself.")
436436 }
437437 else [ScriptTransfer(cH.caller, cn, do)]
438438 (bF ++ ds)
439439 }
440440 else throw("Strict value is not equal to itself.")
441441 }
442442 else throw("Strict value is not equal to itself.")
443443 }
444444 else throw("Strict value is not equal to itself.")
445445 }
446446 }
447447
448448
449449
450450 @Callable(cH)
451451 func putOneTkn (du,dv,dk) = {
452452 let aZ = av()
453453 let dw = valueOrErrorMessage(addressFromString(aZ[w]), "Error. Incorrect staking address.")
454454 let dx = aq()
455455 let bn = dx[q]
456456 let bo = dx[r]
457457 let bp = parseIntValue(dx[s])
458458 let bq = parseIntValue(dx[t])
459459 if ((size(cH.payments) != 1))
460460 then throw("exactly 1 payment is expected")
461461 else {
462462 let cI = value(cH.payments[0])
463463 let bk = toBase58String(value(cI.assetId))
464464 let cJ = cI.amount
465465 let dy = y(du, bp)
466466 let dz = y(dv, bq)
467467 let dA = aN(dz, dy)
468468 let bt = aL(bn)
469469 let bu = y(bt, bp)
470470 let bv = aL(bo)
471471 let bw = y(bv, bq)
472472 let dB = cP(bu, bp, bw, bq, 50)
473473 let dC = if ((bk == bn))
474474 then {
475475 let dD = y(cJ, bp)
476476 let dE = dz
477477 let dF = (dD - dy)
478478 let dG = cP((bu + dF), bp, (bw - dE), bq, 50)
479479 if (true)
480- then throw(((((((((((("dCur = " + toString(dB)) + " dNew = ") + toString(dG)) + " amBalanceX18 - amAdiff = ") + toString((bu - dF))) + " prBalanceX18 + prAdiff= ") + toString((bw + dE))) + "amBalanceX18 = ") + toString(bu)) + "prBalanceX18 = ") + toString(bw)))
480+ then throw(((((((((((("dCur = " + toString(dB)) + " dNew = ") + toString(dG)) + " amBalanceX18 + amAdiff = ") + toString((bu - dF))) + " prBalanceX18 - prAdiff= ") + toString((bw + dE))) + "amBalanceX18 = ") + toString(bu)) + "prBalanceX18 = ") + toString(bw)))
481481 else if ((dG > dB))
482482 then throw("Incorrect argiments passed. Deposit lead to D decrease.")
483483 else true
484484 }
485485 else {
486486 let dH = y(cJ, bq)
487487 let dE = (dz - dH)
488488 let dF = dy
489- let dG = cP((bu + dF), bp, (bw - dE), bq, 50)
489+ let dG = cP((bu - dF), bp, (bw + dE), bq, 50)
490490 if (true)
491- then throw(((("dCur = " + toString(dB)) + " dNew") + toString(dG)))
491+ then throw(((((((((((("dCur = " + toString(dB)) + " dNew = ") + toString(dG)) + " amBalanceX18 - amAdiff = ") + toString((bu - dF))) + " prBalanceX18 + prAdiff= ") + toString((bw + dE))) + "amBalanceX18 = ") + toString(bu)) + "prBalanceX18 = ") + toString(bw)))
492492 else if ((dG > dB))
493493 then throw("Incorrect argiments passed. Deposit lead to D decrease.")
494494 else true
495495 }
496496 if (!(dC))
497497 then throw("Errors.")
498498 else {
499499 let cN = bG(toBase58String(cH.transactionId), 0, du, fromBase58String(bn), dv, fromBase58String(bo), toString(cH.caller), false, true, true)
500500 let cn = cN._2
501501 let do = cN._7
502502 let cO = parseIntValue(cN._8)
503503 if (if (if (ao())
504504 then true
505505 else (cO == k))
506506 then true
507507 else (cO == m))
508508 then throw(("Put operation is blocked by admin. Status = " + toString(cO)))
509509 else {
510510 let dp = invoke(an, "emit", [cn], nil)
511511 if ((dp == dp))
512512 then {
513513 let ds = if (dk)
514514 then {
515515 let dI = invoke(dw, "stake", nil, [AttachedPayment(do, cn)])
516516 if ((dI == dI))
517517 then nil
518518 else throw("Strict value is not equal to itself.")
519519 }
520520 else [ScriptTransfer(cH.caller, cn, do)]
521521 (cN._9 ++ ds)
522522 }
523523 else throw("Strict value is not equal to itself.")
524524 }
525525 }
526526 }
527527 }
528528
529529
530530
531531 @Callable(cH)
532532 func putForFree (dJ) = if ((0 > dJ))
533533 then throw("Invalid value passed")
534534 else {
535535 let cN = cK(cH, dJ, false)
536536 cN._9
537537 }
538538
539539
540540
541541 @Callable(cH)
542542 func get () = {
543543 let bY = cG(cH)
544544 let dK = bY._1
545545 let bE = bY._2
546546 let cJ = bY._3
547547 let bk = bY._4
548548 let bF = bY._5
549549 let dL = invoke(an, "burn", [cJ], [AttachedPayment(bk, cJ)])
550550 if ((dL == dL))
551551 then bF
552552 else throw("Strict value is not equal to itself.")
553553 }
554554
555555
556556
557557 @Callable(cH)
558558 func getOneTkn (dM,dN,dO,dP) = if ((size(cH.payments) != 1))
559559 then throw("exactly 1 payment is expected")
560560 else {
561561 let aZ = aq()
562562 let bm = aZ[p]
563563 let bn = aZ[q]
564564 let bo = aZ[r]
565565 let bp = parseIntValue(aZ[s])
566566 let bq = parseIntValue(aZ[t])
567567 let br = aZ[o]
568568 if (if ((dP != bn))
569569 then (dP != bo)
570570 else false)
571571 then throw(("Incorrect out asset id passed: " + dP))
572572 else {
573573 let dQ = if ((dP == bn))
574574 then bn
575575 else bo
576576 let dR = if ((dP == bn))
577577 then dO
578578 else 0
579579 let dS = if ((dP == bo))
580580 then dO
581581 else 0
582582 let cI = value(cH.payments[0])
583583 let Q = cH.caller
584584 let bj = toBase58String(cH.transactionId)
585585 let bk = value(cI.assetId)
586586 let cJ = cI.amount
587587 if ((bm != toBase58String(bk)))
588588 then throw("Invalid asset passed.")
589589 else {
590590 let dy = y(dM, bp)
591591 let dz = y(dN, bq)
592592 let dT = aN(dz, dy)
593593 let dU = bi(toBase58String(cH.transactionId), toBase58String(bk), cJ, cH.caller)
594594 let bD = dU._1
595595 let bE = dU._2
596596 let dV = if ((dP == bn))
597597 then {
598598 let dW = (dR - bD)
599599 let dX = fraction(y(dW, bp), dT, e)
600600 let dY = fraction((dX - dz), c, dz)
601601 let dZ = B(fraction(y(bE, bq), e, dT), bp)
602602 if (if ((dY > d))
603603 then true
604604 else (-(d) > dY))
605605 then throw(((("Slippage exeeded the value " + toString(d)) + " and equal to ") + toString(dY)))
606606 else (dZ + bD)
607607 }
608608 else {
609609 let ea = (dS - bE)
610610 let dX = fraction(y(ea, bp), e, dT)
611611 let eb = B(fraction(y(bD, bp), dT, e), bq)
612612 let ec = fraction((dX - dy), c, dy)
613613 if (if ((ec > d))
614614 then true
615615 else (-(d) > ec))
616616 then throw(((("Slippage exeeded the value " + toString(d)) + " and equal to ") + toString(ec)))
617617 else (eb + bE)
618618 }
619619 let bt = aL(bn)
620620 let bu = y(bt, bp)
621621 let bv = aL(bo)
622622 let bw = y(bv, bq)
623623 let bx = aN(bw, bu)
624624 let by = B(bx, b)
625625 let bF = [ScriptTransfer(Q, dV, if ((dQ == "WAVES"))
626626 then unit
627627 else fromBase58String(dQ)), StringEntry(S(toString(Q), bj), aH(dR, dS, cJ, by, height, lastBlock.timestamp)), IntegerEntry(L(), by), IntegerEntry(M(height, lastBlock.timestamp), by)]
628628 let ed = invoke(an, "burn", [cJ], [AttachedPayment(bk, cJ)])
629629 if ((ed == ed))
630630 then bF
631631 else throw("Strict value is not equal to itself.")
632632 }
633633 }
634634 }
635635
636636
637637
638638 @Callable(cH)
639639 func getNoLess (ee,ef) = {
640640 let bY = cG(cH)
641641 let bD = bY._1
642642 let bE = bY._2
643643 let cJ = bY._3
644644 let bk = bY._4
645645 let bF = bY._5
646646 if ((ee > bD))
647647 then throw(((("noLessThenAmtAsset failed: " + toString(bD)) + " < ") + toString(ee)))
648648 else if ((ef > bE))
649649 then throw(((("noLessThenPriceAsset failed: " + toString(bE)) + " < ") + toString(ef)))
650650 else {
651651 let dL = invoke(an, "burn", [cJ], [AttachedPayment(bk, cJ)])
652652 if ((dL == dL))
653653 then bF
654654 else throw("Strict value is not equal to itself.")
655655 }
656656 }
657657
658658
659659
660660 @Callable(cH)
661661 func unstakeAndGet (eg) = {
662662 let eh = if ((size(cH.payments) != 0))
663663 then throw("No payments are expected")
664664 else true
665665 if ((eh == eh))
666666 then {
667667 let aZ = aq()
668668 let ei = av()
669669 let do = fromBase58String(aZ[p])
670670 let dw = valueOrErrorMessage(addressFromString(ei[w]), "Error. Incorrect staking address.")
671671 let ej = invoke(dw, "unstake", [toBase58String(do), eg], nil)
672672 if ((ej == ej))
673673 then {
674674 let bY = bi(toBase58String(cH.transactionId), toBase58String(do), eg, cH.caller)
675675 let br = parseIntValue(bY._9)
676676 let bF = bY._10
677677 let ek = if (if (ao())
678678 then true
679679 else (br == m))
680680 then throw(("Get operation is blocked by admin. Status = " + toString(br)))
681681 else true
682682 if ((ek == ek))
683683 then {
684684 let dL = invoke(an, "burn", [eg], [AttachedPayment(do, eg)])
685685 if ((dL == dL))
686686 then bF
687687 else throw("Strict value is not equal to itself.")
688688 }
689689 else throw("Strict value is not equal to itself.")
690690 }
691691 else throw("Strict value is not equal to itself.")
692692 }
693693 else throw("Strict value is not equal to itself.")
694694 }
695695
696696
697697
698698 @Callable(cH)
699699 func activate (el,em) = if ((toString(cH.caller) != toString(an)))
700700 then throw("permissions denied")
701701 else $Tuple2([StringEntry(T(), el), StringEntry(U(), em)], "success")
702702
703703
704704
705705 @Callable(cH)
706706 func getPoolConfigWrapperREADONLY () = $Tuple2(nil, aq())
707707
708708
709709
710710 @Callable(cH)
711711 func getAccBalanceWrapperREADONLY (aM) = $Tuple2(nil, aL(aM))
712712
713713
714714
715715 @Callable(cH)
716716 func calcPricesWrapperREADONLY (aT,aU,aY) = {
717717 let bh = aX(aT, aU, aY)
718718 $Tuple2(nil, [toString(bh[0]), toString(bh[1]), toString(bh[2])])
719719 }
720720
721721
722722
723723 @Callable(cH)
724724 func fromX18WrapperREADONLY (C,D) = $Tuple2(nil, B(parseBigIntValue(C), D))
725725
726726
727727
728728 @Callable(cH)
729729 func toX18WrapperREADONLY (z,A) = $Tuple2(nil, toString(y(z, A)))
730730
731731
732732
733733 @Callable(cH)
734734 func calcPriceBigIntWrapperREADONLY (aO,aP) = $Tuple2(nil, toString(aN(parseBigIntValue(aO), parseBigIntValue(aP))))
735735
736736
737737
738738 @Callable(cH)
739739 func estimatePutOperationWrapperREADONLY (bj,dj,bI,bJ,bK,bL,Q,bM,bN,bO) = $Tuple2(nil, bG(bj, dj, bI, bJ, bK, bL, Q, bM, bN, bO))
740740
741741
742742
743743 @Callable(cH)
744744 func estimateGetOperationWrapperREADONLY (bj,bk,bl,Q) = {
745745 let bY = bi(bj, bk, bl, addressFromStringValue(Q))
746746 $Tuple2(nil, $Tuple10(bY._1, bY._2, bY._3, bY._4, bY._5, bY._6, bY._7, toString(bY._8), bY._9, bY._10))
747747 }
748748
749749
750750 @Verifier(en)
751751 func eo () = {
752752 let ep = en
753753 if ($isInstanceOf(ep, "Order"))
754754 then {
755755 let cs = ep
756756 let eq = ap()
757757 let ag = cr(cs)
758758 let ah = sigVerify(cs.bodyBytes, cs.proofs[0], cs.senderPublicKey)
759759 let ai = sigVerify(cs.bodyBytes, cs.proofs[1], eq)
760760 if (if (if (ag)
761761 then ah
762762 else false)
763763 then ai
764764 else false)
765765 then true
766766 else af(ag, ah, ai)
767767 }
768768 else {
769769 let er = valueOrElse(getString(this, K()), i)
770770 if ((er == i))
771771 then sigVerify(en.bodyBytes, en.proofs[0], en.senderPublicKey)
772772 else sigVerify(en.bodyBytes, en.proofs[0], fromBase58String(er))
773773 }
774774 }
775775

github/deemru/w8io/169f3d6 
112.07 ms