tx · J1vKszP9DZHfrwTKbScSfyr592YNDToSgJ6xXC1za1Fk

3MvHVN2te6mn591sw8iModitUUNeDfkEskC:  -0.03400000 Waves

2022.07.11 22:58 [2135529] smart account 3MvHVN2te6mn591sw8iModitUUNeDfkEskC > SELF 0.00000000 Waves

{ "type": 13, "id": "J1vKszP9DZHfrwTKbScSfyr592YNDToSgJ6xXC1za1Fk", "fee": 3400000, "feeAssetId": null, "timestamp": 1657569461306, "version": 2, "chainId": 84, "sender": "3MvHVN2te6mn591sw8iModitUUNeDfkEskC", "senderPublicKey": "AvjsUtUMUNBpu6SkRkEwWVuoem8wpHefcAzYhpa9HpRK", "proofs": [ "24WjQkoAASoVxPpnsngdPsCEqKahSTEb4mcJVzu5dK1gVkJUWxCu1kyHqkmo3B2ohpP5s29YFCwza4mTYcuwZsDa" ], "script": "base64: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QVZFUwkAAAAAAAACBQAAAAtzdHJpbmdBc3NldAIAAAAFV0FWRVMHAwUAAAAHYWNXYXZlcwYJAAACAAAAAQIAAAA0VGhlIHNtYXJ0IGNvbnRyYWN0IGRvZXMgbm90IGN1cnJlbnRseSBzdXBwb3J0IFdhdmVzLgMJAAAAAAAAAgUAAAAGYXNzZXRTCQACWQAAAAEFAAAAC3N0cmluZ0Fzc2V0BgcBAAAADnRvdGFsQXNzZXRQb29sAAAAAgAAAANrZXkAAAAHYXNzZXRMcAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQMFAAAAB2Fzc2V0THAJAABoAAAAAgAAAAAAAAAAAQUAAAACRDgAAAAAAAAAAAEAAAANAAAAAWkBAAAAC2NvbnN0cnVjdG9yAAAACQAAAAtNYWluQXNzZXRJZAAAAAtVc2RuQXNzZXRJZAAAAAtVc2R0QXNzZXRJZAAAAAtVc2RjQXNzZXRJZAAAAAtOZ25uQXNzZXRJZAAAAAtFdXJuQXNzZXRJZAAAABJwZXJjZW50YWdlUmF0ZVN3YXAAAAARYmxvY2tEaXN0cmlidXRpb24AAAALYWNjZXB0V2F2ZXMDAwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgkBAAAAEWFkbWluVmVyaWZpY2F0aW9uAAAAAAQAAAAPa2V5UG9vbFVzZG5Vc2R0CQEAAAACa3AAAAACBQAAAAtVc2RuQXNzZXRJZAUAAAALVXNkdEFzc2V0SWQEAAAAD2tleVBvb2xVc2RuVXNkYwkBAAAAAmtwAAAAAgUAAAALVXNkbkFzc2V0SWQFAAAAC1VzZGNBc3NldElkBAAAAA9rZXlQb29sVXNkbk5nbm4JAQAAAAJrcAAAAAIFAAAAC1VzZG5Bc3NldElkBQAAAAtOZ25uQXNzZXRJZAQAAAAQa2V5UG9vbFVzZG5XYXZlcwkBAAAAAmtwAAAAAgUAAAALVXNkbkFzc2V0SWQFAAAABXdhdmVzBAAAABRrZXlQb29sVXNkbk1haW5Bc3NldAkBAAAAAmtwAAAAAgUAAAALVXNkbkFzc2V0SWQFAAAAC01haW5Bc3NldElkBAAAAA9rZXlQb29sVXNkbkV1cm4JAQAAAAJrcAAAAAIFAAAAC1VzZG5Bc3NldElkBQAAAAtFdXJuQXNzZXRJZAQAAAAPa2V5UG9vbFVzZGNVc2R0CQEAAAACa3AAAAACBQAAAAtVc2RjQXNzZXRJZAUAAAALVXNkdEFzc2V0SWQEAAAAD2tleVBvb2xVc2RjTmdubgkBAAAAAmtwAAAAAgUAAAALVXNkY0Fzc2V0SWQFAAAAC05nbm5Bc3NldElkBAAAABBrZXlQb29sVXNkY1dhdmVzCQEAAAACa3AAAAACBQAAAAtVc2RjQXNzZXRJZAUAAAAFd2F2ZXMEAAAAFGtleVBvb2xVc2RjTWFpbkFzc2V0CQEAAAACa3AAAAACBQAAAAtVc2RjQXNzZXRJZAUAAAALTWFpbkFzc2V0SWQEAAAAD2tleVBvb2xVc2RjRXVybgkBAAAAAmtwAAAAAgUAAAALVXNkY0Fzc2V0SWQFAAAAC0V1cm5Bc3NldElkBAAAAA9rZXlQb29sVXNkdE5nbm4JAQAAAAJrcAAAAAIFAAAAC1VzZHRBc3NldElkBQAAAAtOZ25uQXNzZXRJZAQAAAAQa2V5UG9vbFVzZHRXYXZlcwkBAAAAAmtwAAAAAgUAAAALVXNkdEFzc2V0SWQFAAAABXdhdmVzBAAAABRrZXlQb29sVXNkdE1haW5Bc3NldAkBAAAAAmtwAAAAAgUAAAALVXNkdEFzc2V0SWQFAAAAC01haW5Bc3NldElkBAAAAA9rZXlQb29sVXNkdEV1cm4JAQAAAAJrcAAAAAIFAAAAC1VzZHRBc3NldElkBQAAAAtFdXJuQXNzZXRJZAQAAAAQa2V5UG9vbE5nbm5XYXZlcwkBAAAAAmtwAAAAAgUAAAALTmdubkFzc2V0SWQFAAAABXdhdmVzBAAAABRrZXlQb29sTmdubk1haW5Bc3NldAkBAAAAAmtwAAAAAgUAAAALTmdubkFzc2V0SWQFAAAAC01haW5Bc3NldElkBAAAAA9rZXlQb29sTmdubkV1cm4JAQAAAAJrcAAAAAIFAAAAC05nbm5Bc3NldElkBQAAAAtFdXJuQXNzZXRJZAQAAAAQa2V5UG9vbE1haW5XYXZlcwkBAAAAAmtwAAAAAgUAAAALTWFpbkFzc2V0SWQFAAAABXdhdmVzBAAAAA9rZXlQb29sTWFpbkV1cm4JAQAAAAJrcAAAAAIFAAAAC01haW5Bc3NldElkBQAAAAtFdXJuQXNzZXRJZAQAAAAQa2V5UG9vbEV1cm5XYXZlcwkBAAAAAmtwAAAAAgUAAAALRXVybkFzc2V0SWQFAAAABXdhdmVzCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAABG1haW4FAAAAC01haW5Bc3NldElkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAABHVzZG4FAAAAC1VzZG5Bc3NldElkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAABHVzZGMFAAAAC1VzZGNBc3NldElkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAABHVzZHQFAAAAC1VzZHRBc3NldElkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAABG5nbm4FAAAAC05nbm5Bc3NldElkCQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACBQAAAAZhV2F2ZXMFAAAAC2FjY2VwdFdhdmVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAAdyYXRlRmVlBQAAABJwZXJjZW50YWdlUmF0ZVN3YXAJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIFAAAAAmFjBgkABEwAAAACCQEAAAAMQm9vbGVhbkVudHJ5AAAAAgUAAAAGc3dhcEFjBwkABEwAAAACCQEAAAAMQm9vbGVhbkVudHJ5AAAAAgUAAAAGcG9vbEFjBwkABEwAAAACCQEAAAAMQm9vbGVhbkVudHJ5AAAAAgUAAAALbGlxdWlkaXR5QWMHCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAANiY0QFAAAAEWJsb2NrRGlzdHJpYnV0aW9uCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA9rZXlQb29sVXNkblVzZHQAAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEGtleVBvb2xVc2RuV2F2ZXMAAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAD2tleVBvb2xVc2RuVXNkYwAAAAAAAAAAAQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAPa2V5UG9vbFVzZG5OZ25uAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABRrZXlQb29sVXNkbk1haW5Bc3NldAAAAAAAAAAAAQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAPa2V5UG9vbFVzZGNVc2R0AAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA9rZXlQb29sVXNkY05nbm4AAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEGtleVBvb2xVc2RjV2F2ZXMAAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAFGtleVBvb2xVc2R0TWFpbkFzc2V0AAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA9rZXlQb29sVXNkdE5nbm4AAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEGtleVBvb2xVc2R0V2F2ZXMAAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEGtleVBvb2xOZ25uV2F2ZXMAAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAFGtleVBvb2xOZ25uTWFpbkFzc2V0AAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABBrZXlQb29sTWFpbldhdmVzAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABBrZXlQb29sRXVybldhdmVzAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA9rZXlQb29sTWFpbkV1cm4AAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAD2tleVBvb2xOZ25uRXVybgAAAAAAAAAAAQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAPa2V5UG9vbFVzZGNFdXJuAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA9rZXlQb29sVXNkbkV1cm4AAAAAAAAAAAEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAD2tleVBvb2xVc2R0RXVybgAAAAAAAAAAAQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAARldXJuBQAAAAtFdXJuQXNzZXRJZAUAAAADbmlsCQAAAgAAAAECAAAALk9ubHkgdGhlIEFkbWluIGl0c2VsZiBjYW4gaW52b2tlIHRoaXMgZnVuY3Rpb24AAAABaQEAAAAIYWN0aXZhdGUAAAABAAAAAXYDAwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgkBAAAAEWFkbWluVmVyaWZpY2F0aW9uAAAAAAkABEwAAAACCQEAAAAMQm9vbGVhbkVudHJ5AAAAAgUAAAACYWMFAAAAAXYFAAAAA25pbAkAAAIAAAABAgAAAC5Pbmx5IHRoZSBBZG1pbiBpdHNlbGYgY2FuIGludm9rZSB0aGlzIGZ1bmN0aW9uAAAAAWkBAAAAC21haW50ZW5hbmNlAAAAAwAAAAVwb29scwAAAARzd2FwAAAABXN0YWtlAwMJAAAAAAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzBgkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIJAQAAABFhZG1pblZlcmlmaWNhdGlvbgAAAAAJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIFAAAABnBvb2xBYwUAAAAFcG9vbHMJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIFAAAABnN3YXBBYwUAAAAEc3dhcAkABEwAAAACCQEAAAAMQm9vbGVhbkVudHJ5AAAAAgUAAAALbGlxdWlkaXR5QWMFAAAABXN0YWtlBQAAAANuaWwJAAACAAAAAQIAAAAuT25seSB0aGUgQWRtaW4gaXRzZWxmIGNhbiBpbnZva2UgdGhpcyBmdW5jdGlvbgAAAAFpAQAAABlwZXJjZW50dWFsUmF0ZUZlZVN3YXBFZGl0AAAAAQAAAARyYXRlAwMJAAAAAAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzBgkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIJAQAAABFhZG1pblZlcmlmaWNhdGlvbgAAAAAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAB3JhdGVGZWUFAAAABHJhdGUFAAAAA25pbAkAAAIAAAABAgAAAC5Pbmx5IHRoZSBBZG1pbiBpdHNlbGYgY2FuIGludm9rZSB0aGlzIGZ1bmN0aW9uAAAAAWkBAAAAC2FjY2VwdFdhdmVzAAAAAQAAAAhhY3RpdmF0ZQMDCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAEdGhpcwYJAAAAAAAAAggFAAAAAWkAAAAGY2FsbGVyCQEAAAARYWRtaW5WZXJpZmljYXRpb24AAAAACQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACBQAAAAZhV2F2ZXMFAAAACGFjdGl2YXRlBQAAAANuaWwJAAACAAAAAQIAAAAuT25seSB0aGUgQWRtaW4gaXRzZWxmIGNhbiBpbnZva2UgdGhpcyBmdW5jdGlvbgAAAAFpAQAAABFibG9ja0Rpc3RyaWJ1dGlvbgAAAAEAAAAIbmV3VmFsdWUDAwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgkBAAAAEWFkbWluVmVyaWZpY2F0aW9uAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAADYmNEBQAAAAhuZXdWYWx1ZQUAAAADbmlsCQAAAgAAAAECAAAALk9ubHkgdGhlIEFkbWluIGl0c2VsZiBjYW4gaW52b2tlIHRoaXMgZnVuY3Rpb24AAAABaQEAAAAIYWRkQWRtaW4AAAABAAAAB2FkZHJlc3MDAwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgkBAAAAEWFkbWluVmVyaWZpY2F0aW9uAAAAAAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAVhZG1pbgUAAAAHYWRkcmVzcwUAAAADbmlsCQAAAgAAAAECAAAALk9ubHkgdGhlIEFkbWluIGl0c2VsZiBjYW4gaW52b2tlIHRoaXMgZnVuY3Rpb24AAAABaQEAAAAYbHBBc3NldENyZWF0ZUZvclBhaXJQb29sAAAABAAAAAZhc3NldDEAAAAGYXNzZXQyAAAABE5hbWUAAAAKY3VzdG9tTmFtZQQAAAAKbmFtZUFzc2V0MQMJAAAAAAAAAgUAAAAGYXNzZXQxBQAAAAV3YXZlcwUAAAAFd2F2ZXMJAQAAAAxnZXRBc3NldE5hbWUAAAABCQACWQAAAAEFAAAABmFzc2V0MQQAAAAKbmFtZUFzc2V0MgMJAAAAAAAAAgUAAAAGYXNzZXQyBQAAAAV3YXZlcwUAAAAFd2F2ZXMJAQAAAAxnZXRBc3NldE5hbWUAAAABCQACWQAAAAEFAAAABmFzc2V0MgQAAAAEbmFtZQMFAAAACmN1c3RvbU5hbWUFAAAABE5hbWUJAAEsAAAAAgkAASwAAAACBQAAAApuYW1lQXNzZXQxAgAAAAFfBQAAAApuYW1lQXNzZXQyBAAAAANrZXkJAQAAAAp2YWxpZFBvb2xLAAAAAQkBAAAAAmtwAAAAAgUAAAAGYXNzZXQxBQAAAAZhc3NldDIDAwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgkBAAAAEWFkbWluVmVyaWZpY2F0aW9uAAAAAAMJAQAAAAIhPQAAAAIFAAAAA2tleQcEAAAADWFzc2V0THBDcmVhdGUJAARCAAAABQUAAAAEbmFtZQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAuTFAgYXNzZXQgZm9yIHBvb2wgbGlxdWlkaXR5IGluIEF4QWkgU3dhcCBwYWlyIAUAAAAGYXNzZXQxAgAAAAFfBQAAAAZhc3NldDIJAABoAAAAAgAAAAAAAAAAAQUAAAACRDgAAAAAAAAAAAgGBAAAAAlpZEFzc2V0THAJAAQ4AAAAAQUAAAANYXNzZXRMcENyZWF0ZQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIFAAAAAWwJAQAAAAJrcAAAAAIFAAAABmFzc2V0MQUAAAAGYXNzZXQyCQACWAAAAAEFAAAACWlkQXNzZXRMcAkABEwAAAACBQAAAA1hc3NldExwQ3JlYXRlBQAAAANuaWwJAAACAAAAAQIAAAAqSW52YWxpZCBQb29sIEtleS4gVHJ5IGludmVydGluZyB0aGUgYXNzZXRzCQAAAgAAAAECAAAALk9ubHkgdGhlIEFkbWluIGl0c2VsZiBjYW4gaW52b2tlIHRoaXMgZnVuY3Rpb24AAAABaQEAAAAHZGVwb3NpdAAAAAMAAAAEcG9vbAAAAAZBc3NldDEAAAAGQXNzZXQyBAAAAAVwb3dlcgkBAAAAEUBleHRyTmF0aXZlKDEwNTEpAAAAAgUAAAAEdGhpcwUAAAACYWMEAAAADmxpcXVpZGl0eVBvd2VyCQEAAAARQGV4dHJOYXRpdmUoMTA1MSkAAAACBQAAAAR0aGlzBQAAAAtsaXF1aWRpdHlBYwQAAAAJTWFpbkFzc2V0CQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzBQAAAARtYWluBAAAAAlscEFzc2V0SWQDBQAAAARwb29sCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzCQABLAAAAAIFAAAAAWwJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyBQAAAAlNYWluQXNzZXQDBQAAAAVwb3dlcgMJAQAAAAEhAAAAAQUAAAAObGlxdWlkaXR5UG93ZXIDCQEAAAACIT0AAAACCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAdhc3NldElkCQACWQAAAAEFAAAACWxwQXNzZXRJZAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAjSW52YWxpZCBhc3NldCEgS2luZGx5IERlcG9zaXQgT25seSAFAAAACU1haW5Bc3NldAIAAAASIG9yIHZhbGlkIGFzc2V0IGxwAwkBAAAAASEAAAABBQAAAARwb29sBAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWN1cnJlbnRBbW91bnQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAAKY3VycmVudEtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAluZXdBbW91bnQJAABkAAAAAgUAAAANY3VycmVudEFtb3VudAgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAGYW1vdW50BAAAAAp1c2VyYW1vdW50CQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAKY3VycmVudEtleQUAAAAJbmV3QW1vdW50BAAAABF1c2VyZGVwb3NpdGhlaWdodAkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgUAAAAOZGVwb3NpdF9oZWlnaHQFAAAACmN1cnJlbnRLZXkFAAAABmhlaWdodAQAAAATcHJldmlvdXNsb2NrYmFsYW5jZQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAABRUb3RhbF9Ub2tlbnNfTG9ja2VkOgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAp0b3RhbHRva2VuCQAAZAAAAAIFAAAAE3ByZXZpb3VzbG9ja2JhbGFuY2UICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAQAAAADVExWCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAUVG90YWxfVG9rZW5zX0xvY2tlZDoFAAAACnRvdGFsdG9rZW4JAARMAAAAAgUAAAAKdXNlcmFtb3VudAkABEwAAAACBQAAABF1c2VyZGVwb3NpdGhlaWdodAkABEwAAAACBQAAAANUTFYFAAAAA25pbAQAAAAHcG9vbEtleQkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDIEAAAAA2tleQkBAAAACnZhbGlkUG9vbEsAAAABBQAAAAdwb29sS2V5AwkBAAAAAiE9AAAAAgUAAAADa2V5BwQAAAAKY3VycmVudEtleQkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAA1jdXJyZW50QW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACVNUQUtFX0xQXwUAAAAKY3VycmVudEtleQIAAAABXwUAAAAHcG9vbEtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAluZXdBbW91bnQJAABkAAAAAgUAAAANY3VycmVudEFtb3VudAgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAGYW1vdW50BAAAAAp1c2VyYW1vdW50CQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAJU1RBS0VfTFBfBQAAAApjdXJyZW50S2V5AgAAAAFfBQAAAAdwb29sS2V5BQAAAAluZXdBbW91bnQEAAAAEXVzZXJkZXBvc2l0aGVpZ2h0CQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAA5kZXBvc2l0X2hlaWdodAIAAAABXwUAAAAKY3VycmVudEtleQIAAAABXwUAAAAHcG9vbEtleQUAAAAGaGVpZ2h0BAAAABNwcmV2aW91c2xvY2tiYWxhbmNlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAXVG90YWxfVG9rZW5zX0xQX0xvY2tlZF8FAAAAB3Bvb2xLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAKdG90YWx0b2tlbgkAAGQAAAACBQAAABNwcmV2aW91c2xvY2tiYWxhbmNlCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAZhbW91bnQEAAAAA1RMVgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAXVG90YWxfVG9rZW5zX0xQX0xvY2tlZF8FAAAAB3Bvb2xLZXkFAAAACnRvdGFsdG9rZW4JAARMAAAAAgUAAAAKdXNlcmFtb3VudAkABEwAAAACBQAAABF1c2VyZGVwb3NpdGhlaWdodAkABEwAAAACBQAAAANUTFYFAAAAA25pbAkAAAIAAAABAgAAABFJbnZhbGlkIFBvb2wga2V5LgkAAAIAAAABAgAAAClsaXF1aWRpdHkgaXMgY3VycmVudGx5IHVuZGVyIG1haW50ZW5hbmNlLgkAAAIAAAABAgAAACRkQXBwIGlzIGN1cnJlbnRseSB1bmRlciBtYWludGVuYW5jZS4AAAABaQEAAAAGcmVtb3ZlAAAABAAAAARwb29sAAAABkFzc2V0MQAAAAZBc3NldDIAAAAGYW1vdW50BAAAAAVwb3dlcgkBAAAAEUBleHRyTmF0aXZlKDEwNTEpAAAAAgUAAAAEdGhpcwUAAAACYWMEAAAADmxpcXVpZGl0eVBvd2VyCQEAAAARQGV4dHJOYXRpdmUoMTA1MSkAAAACBQAAAAR0aGlzBQAAAAtsaXF1aWRpdHlBYwQAAAADcG10CQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAAlNYWluQXNzZXQJAAJZAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwUAAAAEbWFpbgMFAAAABXBvd2VyAwkBAAAAASEAAAABBQAAAA5saXF1aWRpdHlQb3dlcgQAAAAKY3VycmVudEtleQkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAA1jdXJyZW50QW1vdW50BAAAAAckbWF0Y2gwAwUAAAAEcG9vbAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAJU1RBS0VfTFBfBQAAAApjdXJyZW50S2V5AgAAAAFfCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwUAAAAKY3VycmVudEtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABFzd2FwaGVpZ2h0a2V5bmFtZQMFAAAABHBvb2wJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAOZGVwb3NpdF9oZWlnaHQCAAAAAV8FAAAACmN1cnJlbnRLZXkCAAAAAV8JAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyCQABLAAAAAIFAAAADmRlcG9zaXRfaGVpZ2h0BQAAAApjdXJyZW50S2V5BAAAABNwcmV2aW91c2xvY2tiYWxhbmNlAwUAAAAEcG9vbAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABdUb3RhbF9Ub2tlbnNfTFBfTG9ja2VkXwkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDIJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAFFRvdGFsX1Rva2Vuc19Mb2NrZWQ6BAAAAAp0b3RhbHRva2VuCQAAZQAAAAIFAAAAE3ByZXZpb3VzbG9ja2JhbGFuY2UFAAAABmFtb3VudAQAAAAEZGlmZgkAAGUAAAACBQAAAAZoZWlnaHQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMFAAAAEXN3YXBoZWlnaHRrZXluYW1lBAAAAANiY2QJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMFAAAAA2JjRAQAAAAGcmV3YXJkCQAAaAAAAAIJAABoAAAAAgUAAAAEZGlmZgUAAAADYmNkBQAAAAJEOAQAAAAHZmVlQ2FsYwkAAGkAAAACBQAAAAZyZXdhcmQJAABpAAAAAgUAAAATcHJldmlvdXNsb2NrYmFsYW5jZQUAAAAGYW1vdW50AwkAAGYAAAACAAAAAAAAAAAABQAAAAZhbW91bnQJAAACAAAAAQMFAAAABHBvb2wJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAYQ2FuJ3Qgd2l0aGRyYXcgbmVnYXRpdmUgBQAAAAZBc3NldDECAAAAAS8FAAAABkFzc2V0MgIAAAAHIGFtb3VudAIAAAAjQ2FuJ3Qgd2l0aGRyYXcgbmVnYXRpdmUgQXhBaSBhbW91bnQEAAAACW5ld0Ftb3VudAkAAGUAAAACBQAAAA1jdXJyZW50QW1vdW50BQAAAAZhbW91bnQDCQAAZgAAAAIAAAAAAAAAAAAFAAAACW5ld0Ftb3VudAkAAAIAAAABAwUAAAAEcG9vbAkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAABROb3QgZW5vdWdoIEFzc2V0IExwIAUAAAAGQXNzZXQxAgAAAAEvBQAAAAZBc3NldDICAAAACCBiYWxhbmNlAgAAABdOb3QgZW5vdWdoIEF4QWkgYmFsYW5jZQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgMFAAAABHBvb2wJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACVNUQUtFX0xQXwUAAAAKY3VycmVudEtleQIAAAABXwkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDIFAAAACmN1cnJlbnRLZXkFAAAACW5ld0Ftb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgMFAAAABHBvb2wJAAEsAAAAAgIAAAAXVG90YWxfVG9rZW5zX0xQX0xvY2tlZF8JAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyAgAAABRUb3RhbF9Ub2tlbnNfTG9ja2VkOgUAAAAKdG90YWx0b2tlbgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAABmFtb3VudAMFAAAABHBvb2wJAAJZAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAFsCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgUAAAAJTWFpbkFzc2V0CQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAHZmVlQ2FsYwUAAAAJTWFpbkFzc2V0BQAAAANuaWwJAAACAAAAAQIAAAApbGlxdWlkaXR5IGlzIGN1cnJlbnRseSB1bmRlciBtYWludGVuYW5jZS4JAAACAAAAAQIAAAAkZEFwcCBpcyBjdXJyZW50bHkgdW5kZXIgbWFpbnRlbmFuY2UuAAAAAWkBAAAADGFkZExpcXVpZGl0eQAAAAIAAAAGQXNzZXQxAAAABkFzc2V0MgQAAAAFcG93ZXIJAQAAABFAZXh0ck5hdGl2ZSgxMDUxKQAAAAIFAAAABHRoaXMFAAAAAmFjBAAAAAxwb29sQWN0aXZhdGUJAQAAABFAZXh0ck5hdGl2ZSgxMDUxKQAAAAIFAAAABHRoaXMFAAAABnBvb2xBYwQAAAAHYWNXYXZlcwkBAAAAEUBleHRyTmF0aXZlKDEwNTEpAAAAAgUAAAAEdGhpcwUAAAAGYVdhdmVzBAAAAANrZXkJAQAAAAp2YWxpZFBvb2xLAAAAAQkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDIEAAAABmFzc2V0MQgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAHYXNzZXRJZAQAAAAGYXNzZXQyCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQAAAAdhc3NldElkBAAAAARVU0ROCQACWQAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAABHVzZG4EAAAABFVTREMJAAJZAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwUAAAAEdXNkYwQAAAAEVVNEVAkAAlkAAAABCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzBQAAAAR1c2R0BAAAAAROR05OCQACWQAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAABG5nbm4EAAAABEVVUk4JAAJZAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwUAAAAEZXVybgQAAAAJTWFpbkFzc2V0CQACWQAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAABG1haW4EAAAACWxwQXNzZXRJZAkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAFsCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgQAAAAPdG90YWxBc3NldDFQb29sAwkAAGYAAAACAAAAAAAAAAACCQEAAAAOdG90YWxBc3NldFBvb2wAAAACCQABLAAAAAIJAAEsAAAAAgkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDICAAAAAV8FAAAABkFzc2V0MQcICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAkBAAAADnRvdGFsQXNzZXRQb29sAAAAAgkAASwAAAACCQABLAAAAAIJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyAgAAAAFfBQAAAAZBc3NldDEHBAAAAA90b3RhbEFzc2V0MlBvb2wDCQAAZgAAAAIAAAAAAAAAAAIJAQAAAA50b3RhbEFzc2V0UG9vbAAAAAIJAAEsAAAAAgkAASwAAAACCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgIAAAABXwUAAAAGQXNzZXQxBwgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEAAAAGYW1vdW50CQEAAAAOdG90YWxBc3NldFBvb2wAAAACCQABLAAAAAIJAAEsAAAAAgkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDICAAAAAV8FAAAABkFzc2V0MgcEAAAAB3RvdGFsTHAJAQAAAA50b3RhbEFzc2V0UG9vbAAAAAIFAAAACWxwQXNzZXRJZAYEAAAADHByaWNlTHBBc3NldAkAAGkAAAACCQAAZAAAAAIFAAAAD3RvdGFsQXNzZXQxUG9vbAUAAAAPdG90YWxBc3NldDJQb29sBQAAAAd0b3RhbExwBAAAAA5xdWFudGl0eUFzc2V0MgkAAGgAAAACCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAZhbW91bnQJAABpAAAAAgUAAAAPdG90YWxBc3NldDJQb29sBQAAAA90b3RhbEFzc2V0MVBvb2wEAAAACFZhbGlkYXRlAwkAAAAAAAACCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQAAAAZhbW91bnQFAAAADnF1YW50aXR5QXNzZXQyBgcDBQAAAAVwb3dlcgMJAQAAAAEhAAAAAQUAAAAMcG9vbEFjdGl2YXRlAwMDCQEAAAABIQAAAAEJAAAAAAAAAgUAAAAGYXNzZXQxBQAAAAZhc3NldDIJAQAAAA12YWxpZGF0ZUFzc2V0AAAAAwUAAAAGYXNzZXQxBQAAAAZBc3NldDEFAAAAB2FjV2F2ZXMHCQEAAAANdmFsaWRhdGVBc3NldAAAAAMFAAAABmFzc2V0MgUAAAAGQXNzZXQyBQAAAAdhY1dhdmVzBwMDAwMDAwMDCQAAAAAAAAIFAAAABmFzc2V0MQUAAAAEVVNETgYJAAAAAAAAAgUAAAAGYXNzZXQxBQAAAARVU0RDBgkAAAAAAAACBQAAAAZhc3NldDEFAAAABFVTRFQGCQAAAAAAAAIFAAAABmFzc2V0MQUAAAAETkdOTgYJAAAAAAAAAgUAAAAGYXNzZXQxBQAAAAlNYWluQXNzZXQGCQAAAAAAAAIFAAAABmFzc2V0MQUAAAAFV0FWRVMGCQAAAAAAAAIFAAAABmFzc2V0MQUAAAAERVVSTgMDAwMDAwkAAAAAAAACBQAAAAZhc3NldDIFAAAABFVTRE4GCQAAAAAAAAIFAAAABmFzc2V0MgUAAAAEVVNEQwYJAAAAAAAAAgUAAAAGYXNzZXQyBQAAAARVU0RUBgkAAAAAAAACBQAAAAZhc3NldDIFAAAABE5HTk4GCQAAAAAAAAIFAAAABmFzc2V0MgUAAAAJTWFpbkFzc2V0BgkAAAAAAAACBQAAAAZhc3NldDIFAAAABVdBVkVTBgkAAAAAAAACBQAAAAZhc3NldDIFAAAABEVVUk4HAwkBAAAAAiE9AAAAAgUAAAADa2V5BwMFAAAACFZhbGlkYXRlBAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWN1cnJlbnRBbW91bnQJAQAAAAlrcEFkZHJlc3MAAAACBQAAAApjdXJyZW50S2V5CQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgQAAAATY3VycmVudEFtb3VudEFzc2V0MQkBAAAABnBvb2xBQQAAAAMFAAAACmN1cnJlbnRLZXkJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyBQAAAAZBc3NldDEEAAAAE2N1cnJlbnRBbW91bnRBc3NldDIJAQAAAAZwb29sQUEAAAADBQAAAApjdXJyZW50S2V5CQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgUAAAAGQXNzZXQyBAAAAAphc3NldDFwb29sCQEAAAAGYXNzZXRQAAAAAgkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDIFAAAABkFzc2V0MQQAAAAKYXNzZXQycG9vbAkBAAAABmFzc2V0UAAAAAIJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyBQAAAAZBc3NldDIEAAAACXJlY2VpdmVMcAMJAAAAAAAAAgUAAAAPdG90YWxBc3NldDFQb29sCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAZhbW91bnQJAABoAAAAAgAAAAAAAAAAAQUAAAACRDgJAABpAAAAAgkAAGQAAAACCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAZhbW91bnQICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABAAAABmFtb3VudAkAAGkAAAACCQAAZAAAAAIFAAAAD3RvdGFsQXNzZXQxUG9vbAUAAAAPdG90YWxBc3NldDJQb29sBQAAAAd0b3RhbExwBAAAABZuZXdjdXJyZW50QW1vdW50QXNzZXQxCQAAZAAAAAIFAAAAE2N1cnJlbnRBbW91bnRBc3NldDEICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAQAAAAWbmV3Y3VycmVudEFtb3VudEFzc2V0MgkAAGQAAAACBQAAABNjdXJyZW50QW1vdW50QXNzZXQyCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQAAAAZhbW91bnQEAAAAEG5ld2N1cnJlbnRBbW91bnQJAABkAAAAAgUAAAANY3VycmVudEFtb3VudAUAAAAJcmVjZWl2ZUxwBAAAAA1uZXdhc3NldDFwb29sCQAAZAAAAAIFAAAACmFzc2V0MXBvb2wICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAQAAAANbmV3YXNzZXQycG9vbAkAAGQAAAACBQAAAAphc3NldDJwb29sCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQAAAAZhbW91bnQJAARMAAAAAgkBAAAAB1JlaXNzdWUAAAADCQACWQAAAAEFAAAACWxwQXNzZXRJZAUAAAAJcmVjZWl2ZUxwBgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAHQWRkcmVzcwAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMFAAAACXJlY2VpdmVMcAkAAlkAAAABBQAAAAlscEFzc2V0SWQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAARwa2V5AAAAAwUAAAAGQXNzZXQxBQAAAAZBc3NldDIFAAAACmN1cnJlbnRLZXkFAAAABmhlaWdodAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAApjdXJyZW50S2V5AgAAAAFfCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgIAAAABXwUAAAAGQXNzZXQxBQAAABZuZXdjdXJyZW50QW1vdW50QXNzZXQxCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAACmN1cnJlbnRLZXkCAAAAAV8JAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyAgAAAAFfBQAAAAZBc3NldDIFAAAAFm5ld2N1cnJlbnRBbW91bnRBc3NldDIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgIAAAABXwUAAAAKY3VycmVudEtleQUAAAAQbmV3Y3VycmVudEFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyAgAAAAFfBQAAAAZBc3NldDEFAAAADW5ld2Fzc2V0MXBvb2wJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgIAAAABXwUAAAAGQXNzZXQyBQAAAA1uZXdhc3NldDJwb29sCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAAZBc3NldDEJAABkAAAAAgkBAAAAE2dldEFtb3VudEJsb2NrQXNzZXQAAAABBQAAAAZBc3NldDEICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAGQXNzZXQyCQAAZAAAAAIJAQAAABNnZXRBbW91bnRCbG9ja0Fzc2V0AAAAAQUAAAAGQXNzZXQyCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQAAAAZhbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAACWxwQXNzZXRJZAkAAGQAAAACCQEAAAATZ2V0QW1vdW50QmxvY2tBc3NldAAAAAEFAAAACWxwQXNzZXRJZAUAAAAJcmVjZWl2ZUxwBQAAAANuaWwJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAP1BheW1lbnQgb2YgaW52YWxpZCAxLzEgYW1vdW50cyB0byB0aGUgUG9vbC4gVHJ5IEFzc2V0Mjoge3ZhbHVlOgkAAaQAAAABCQAAaAAAAAIICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAkAAGkAAAACBQAAAA90b3RhbEFzc2V0MlBvb2wFAAAAD3RvdGFsQXNzZXQxUG9vbAIAAAAMfSBSZWNlaXZlZDogCQABpAAAAAEICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABAAAABmFtb3VudAIAAAALIFZhbGlkYXRlOiAJAAGlAAAAAQUAAAAIVmFsaWRhdGUJAAACAAAAAQIAAAARSW52YWxpZCBQb29sIEtleS4JAAACAAAAAQIAAAAZSW52YWxpZCBBc3NldDEgb3IgQXNzZXQyIQkAAAIAAAABAgAAACBBc3NldDEgY2Fubm90IGJlIGVxdWFsIHRvIEFzc2V0MgkAAAIAAAABAgAAAClsaXF1aWRpdHkgaXMgY3VycmVudGx5IHVuZGVyIG1haW50ZW5hbmNlLgkAAAIAAAABAgAAACRkQXBwIGlzIGN1cnJlbnRseSB1bmRlciBtYWludGVuYW5jZS4AAAABaQEAAAAPcmVtb3ZlTGlxdWlkaXR5AAAAAwAAAAZBc3NldDEAAAAGQXNzZXQyAAAABkFtb3VudAQAAAAKY3VycmVudEtleQkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAAVwb3dlcgkBAAAAEUBleHRyTmF0aXZlKDEwNTEpAAAAAgUAAAAEdGhpcwUAAAACYWMEAAAADHBvb2xBY3RpdmF0ZQkBAAAAEUBleHRyTmF0aXZlKDEwNTEpAAAAAgUAAAAEdGhpcwUAAAAGcG9vbEFjBAAAAAdhY1dhdmVzCQEAAAARQGV4dHJOYXRpdmUoMTA1MSkAAAACBQAAAAR0aGlzBQAAAAZhV2F2ZXMEAAAAB3Bvb2xLZXkJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyBAAAAANrZXkJAQAAAAp2YWxpZFBvb2xLAAAAAQUAAAAHcG9vbEtleQQAAAAGYXNzZXQxAwkAAAAAAAACBQAAAAZBc3NldDEFAAAABXdhdmVzAwUAAAAHYWNXYXZlcwUAAAAFV0FWRVMJAAACAAAAAQIAAAA0VGhlIHNtYXJ0IGNvbnRyYWN0IGRvZXMgbm90IGN1cnJlbnRseSBzdXBwb3J0IFdhdmVzLgkAAlkAAAABBQAAAAZBc3NldDEEAAAABmFzc2V0MgMJAAAAAAAAAgUAAAAGQXNzZXQyBQAAAAV3YXZlcwMFAAAAB2FjV2F2ZXMFAAAABVdBVkVTCQAAAgAAAAECAAAANFRoZSBzbWFydCBjb250cmFjdCBkb2VzIG5vdCBjdXJyZW50bHkgc3VwcG9ydCBXYXZlcy4JAAJZAAAAAQUAAAAGQXNzZXQyBAAAAARVU0ROCQACWQAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAABHVzZG4EAAAABFVTREMJAAJZAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwUAAAAEdXNkYwQAAAAEVVNEVAkAAlkAAAABCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzBQAAAAR1c2R0BAAAAAROR05OCQACWQAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAABG5nbm4EAAAACU1haW5Bc3NldAkAAlkAAAABCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzBQAAAARtYWluBAAAAARFVVJOCQACWQAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAABGV1cm4EAAAACWxwQXNzZXRJZAkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAFsCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgQAAAANY3VycmVudEFtb3VudAkBAAAACWtwQWRkcmVzcwAAAAIFAAAACmN1cnJlbnRLZXkJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyBAAAAA9hbW91bnRMcEJsb2NrZWQJAQAAAAlscEJsb2NrZWQAAAACBQAAAApjdXJyZW50S2V5BQAAAAdwb29sS2V5BAAAAAd0b3RhbExQCQEAAAAOdG90YWxBc3NldFBvb2wAAAACBQAAAAlscEFzc2V0SWQGBAAAAA90b3RhbEFzc2V0MVBvb2wJAQAAAA50b3RhbEFzc2V0UG9vbAAAAAIJAAEsAAAAAgkAASwAAAACCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgIAAAABXwUAAAAGQXNzZXQxBwQAAAAPdG90YWxBc3NldDJQb29sCQEAAAAOdG90YWxBc3NldFBvb2wAAAACCQABLAAAAAIJAAEsAAAAAgkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDICAAAAAV8FAAAABkFzc2V0MgcDBQAAAAVwb3dlcgMJAQAAAAEhAAAAAQUAAAAMcG9vbEFjdGl2YXRlAwkBAAAAASEAAAABCQAAAAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyAwMDAwMDAwMJAAAAAAAAAgUAAAAGYXNzZXQxBQAAAARVU0ROBgkAAAAAAAACBQAAAAZhc3NldDEFAAAABFVTREMGCQAAAAAAAAIFAAAABmFzc2V0MQUAAAAEVVNEVAYJAAAAAAAAAgUAAAAGYXNzZXQxBQAAAAROR05OBgkAAAAAAAACBQAAAAZhc3NldDEFAAAACU1haW5Bc3NldAYJAAAAAAAAAgUAAAAGYXNzZXQxBQAAAAVXQVZFUwYJAAAAAAAAAgUAAAAGYXNzZXQxBQAAAARFVVJOAwMDAwMDCQAAAAAAAAIFAAAABmFzc2V0MgUAAAAEVVNETgYJAAAAAAAAAgUAAAAGYXNzZXQyBQAAAARVU0RDBgkAAAAAAAACBQAAAAZhc3NldDIFAAAABFVTRFQGCQAAAAAAAAIFAAAABmFzc2V0MgUAAAAETkdOTgYJAAAAAAAAAgUAAAAGYXNzZXQyBQAAAAlNYWluQXNzZXQGCQAAAAAAAAIFAAAABmFzc2V0MgUAAAAFV0FWRVMGCQAAAAAAAAIFAAAABmFzc2V0MgUAAAAERVVSTgcDCQEAAAACIT0AAAACBQAAAANrZXkHAwkBAAAAASEAAAABCQAAAAAAAAIFAAAADWN1cnJlbnRBbW91bnQAAAAAAAAAAAADCQAAZwAAAAIJAABlAAAAAgUAAAANY3VycmVudEFtb3VudAUAAAAPYW1vdW50THBCbG9ja2VkBQAAAAZBbW91bnQDAwkAAGYAAAACBQAAAA90b3RhbEFzc2V0MVBvb2wAAAAAAAAAAAIGCQAAZgAAAAIFAAAAD3RvdGFsQXNzZXQyUG9vbAAAAAAAAAAAAgQAAAANcmVjZWl2ZUFzc2V0MQkAAaAAAAABCQABOgAAAAIJAAE5AAAAAgkAATwAAAADCQABNgAAAAEICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAkAATYAAAABBQAAAAJEOAkAATYAAAABBQAAAAd0b3RhbExQCQABNgAAAAEFAAAAD3RvdGFsQXNzZXQxUG9vbAkAATYAAAABBQAAAAJEOAQAAAANcmVjZWl2ZUFzc2V0MgkAAaAAAAABCQABOgAAAAIJAAE5AAAAAgkAATwAAAADCQABNgAAAAEICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAkAATYAAAABBQAAAAJEOAkAATYAAAABBQAAAAd0b3RhbExQCQABNgAAAAEFAAAAD3RvdGFsQXNzZXQyUG9vbAkAATYAAAABBQAAAAJEOAQAAAAKYXNzZXQxcG9vbAkBAAAABmFzc2V0UAAAAAIJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyBQAAAAZBc3NldDEEAAAACmFzc2V0MnBvb2wJAQAAAAZhc3NldFAAAAACCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgUAAAAGQXNzZXQyBAAAABNjdXJyZW50QW1vdW50QXNzZXQxCQEAAAAGcG9vbEFBAAAAAwUAAAAKY3VycmVudEtleQkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDIFAAAABkFzc2V0MQQAAAATY3VycmVudEFtb3VudEFzc2V0MgkBAAAABnBvb2xBQQAAAAMFAAAACmN1cnJlbnRLZXkJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyBQAAAAZBc3NldDIEAAAAFm5ld2N1cnJlbnRBbW91bnRBc3NldDEJAABlAAAAAgUAAAATY3VycmVudEFtb3VudEFzc2V0MQUAAAANcmVjZWl2ZUFzc2V0MQQAAAAWbmV3Y3VycmVudEFtb3VudEFzc2V0MgkAAGUAAAACBQAAABNjdXJyZW50QW1vdW50QXNzZXQyBQAAAA1yZWNlaXZlQXNzZXQyBAAAABBuZXdjdXJyZW50QW1vdW50CQAAZQAAAAIFAAAADWN1cnJlbnRBbW91bnQFAAAABkFtb3VudAQAAAANbmV3YXNzZXQxcG9vbAkAAGUAAAACBQAAAAphc3NldDFwb29sBQAAAA1yZWNlaXZlQXNzZXQxBAAAAA1uZXdhc3NldDJwb29sCQAAZQAAAAIFAAAACmFzc2V0MnBvb2wFAAAADXJlY2VpdmVBc3NldDIDCQAAAAAAAAIICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAAB2Fzc2V0SWQJAAJZAAAAAQUAAAAJbHBBc3NldElkAwkAAAAAAAACBQAAAAZBbW91bnQICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAkABEwAAAACCQEAAAAEQnVybgAAAAIJAAJZAAAAAQUAAAAJbHBBc3NldElkBQAAAAZBbW91bnQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAB0FkZHJlc3MAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBQAAAA1yZWNlaXZlQXNzZXQxBQAAAAZhc3NldDEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAB0FkZHJlc3MAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBQAAAA1yZWNlaXZlQXNzZXQyBQAAAAZhc3NldDIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAARwa2V5AAAAAwUAAAAGQXNzZXQxBQAAAAZBc3NldDIFAAAACmN1cnJlbnRLZXkFAAAABmhlaWdodAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAApjdXJyZW50S2V5AgAAAAFfCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgIAAAABXwUAAAAGQXNzZXQxBQAAABZuZXdjdXJyZW50QW1vdW50QXNzZXQxCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAACmN1cnJlbnRLZXkCAAAAAV8JAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyAgAAAAFfBQAAAAZBc3NldDIFAAAAFm5ld2N1cnJlbnRBbW91bnRBc3NldDIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgIAAAABXwUAAAAKY3VycmVudEtleQUAAAAQbmV3Y3VycmVudEFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyAgAAAAFfBQAAAAZBc3NldDEFAAAADW5ld2Fzc2V0MXBvb2wJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgIAAAABXwUAAAAGQXNzZXQyBQAAAA1uZXdhc3NldDJwb29sCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAAZBc3NldDEJAABlAAAAAgkBAAAAE2dldEFtb3VudEJsb2NrQXNzZXQAAAABBQAAAAZBc3NldDEFAAAADXJlY2VpdmVBc3NldDEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAABkFzc2V0MgkAAGUAAAACCQEAAAATZ2V0QW1vdW50QmxvY2tBc3NldAAAAAEFAAAABkFzc2V0MgUAAAANcmVjZWl2ZUFzc2V0MgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAJbHBBc3NldElkCQAAZQAAAAIJAQAAABNnZXRBbW91bnRCbG9ja0Fzc2V0AAAAAQUAAAAJbHBBc3NldElkBQAAAAZBbW91bnQFAAAAA25pbAkAAAIAAAABCQABLAAAAAICAAAASFdpdGhkcmF3YWwgYW1vdW50IGxvd2VyIHRoYW4gYXNzZXQgbHAgYW1vdW50LiBZb3VyIExwIGFtb3VudCBhdmFpbGFibGU6IAkAAaQAAAABBQAAAAZBbW91bnQJAAACAAAAAQIAAAA5UmVxdWlyZXMgYW4gbHAgYXNzZXQgYXMgcGF5bWVudCB0byByZW1vdmUgbG9ja2VkIGFtb3VudHMuCQAAAgAAAAECAAAAFlBvb2wgaGFzIG5vIGxpcXVpZGl0eS4JAAACAAAAAQkAASwAAAACAgAAAFRBbW91bnQgdG8gYmUgd2l0aGRyYXduIGdyZWF0ZXIgdGhhbiB0aGUgYW1vdW50IGF2YWlsYWJsZSBmb3Igd2l0aGRyYXdhbC4gQXZhaWxhYmxlOiAJAAGkAAAAAQUAAAAGQW1vdW50CQAAAgAAAAECAAAAK1lvdSBoYXZlIG5vIGxvY2tlZCB2YWx1ZXMg4oCL4oCLaW4gdGhlIHBvb2wJAAACAAAAAQIAAAARSW52YWxpZCBQb29sIEtleS4JAAACAAAAAQIAAAAZSW52YWxpZCBBc3NldDEgb3IgQXNzZXQyIQkAAAIAAAABAgAAACBBc3NldDEgY2Fubm90IGJlIGVxdWFsIHRvIEFzc2V0MgkAAAIAAAABAgAAAClsaXF1aWRpdHkgaXMg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", "height": 2135529, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BPLKEDSL1gyhppxkWq4txC2tCgq6sDzBFwhQaJ4Fd5QC Next: none Diff:
OldNewDifferences
577577 then if ((M != false))
578578 then if (!((bb == 0)))
579579 then if (((bb - bN) >= bM))
580- then {
581- let bP = toInt(((fraction(toBigInt(r.payments[0].amount), toBigInt(i), toBigInt(bO)) * toBigInt(bw)) / toBigInt(i)))
582- let bQ = toInt(((fraction(toBigInt(r.payments[0].amount), toBigInt(i), toBigInt(bO)) * toBigInt(bx)) / toBigInt(i)))
583- let bE = R(I(T, U), T)
584- let bF = R(I(T, U), U)
585- let bC = P(ba, I(T, U), T)
586- let bD = P(ba, I(T, U), U)
587- let bH = (bC - bP)
588- let bI = (bD - bQ)
589- let bJ = (bb - bM)
590- let bK = (bE - bP)
591- let bL = (bF - bQ)
592- if ((r.payments[0].assetId == fromBase58String(aZ)))
593- then if ((bM == r.payments[0].amount))
594- then [Burn(fromBase58String(aZ), bM), ScriptTransfer(Address(r.caller.bytes), bP, J), ScriptTransfer(Address(r.caller.bytes), bQ, K), IntegerEntry(S(T, U, ba), height), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + T), bH), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + U), bI), IntegerEntry(((I(T, U) + "_") + ba), bJ), IntegerEntry(((I(T, U) + "_") + T), bK), IntegerEntry(((I(T, U) + "_") + U), bL), IntegerEntry(T, (p(T) - bP)), IntegerEntry(U, (p(U) - bQ)), IntegerEntry(aZ, (p(aZ) - bM))]
595- else throw(("Withdrawal amount lower than asset lp amount. Your Lp amount available: " + toString(bM)))
596- else throw("Requires an lp asset as payment to remove locked amounts.")
597- }
580+ then if (if ((bw > 2))
581+ then true
582+ else (bx > 2))
583+ then {
584+ let bP = toInt(((fraction(toBigInt(r.payments[0].amount), toBigInt(i), toBigInt(bO)) * toBigInt(bw)) / toBigInt(i)))
585+ let bQ = toInt(((fraction(toBigInt(r.payments[0].amount), toBigInt(i), toBigInt(bO)) * toBigInt(bx)) / toBigInt(i)))
586+ let bE = R(I(T, U), T)
587+ let bF = R(I(T, U), U)
588+ let bC = P(ba, I(T, U), T)
589+ let bD = P(ba, I(T, U), U)
590+ let bH = (bC - bP)
591+ let bI = (bD - bQ)
592+ let bJ = (bb - bM)
593+ let bK = (bE - bP)
594+ let bL = (bF - bQ)
595+ if ((r.payments[0].assetId == fromBase58String(aZ)))
596+ then if ((bM == r.payments[0].amount))
597+ then [Burn(fromBase58String(aZ), bM), ScriptTransfer(Address(r.caller.bytes), bP, J), ScriptTransfer(Address(r.caller.bytes), bQ, K), IntegerEntry(S(T, U, ba), height), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + T), bH), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + U), bI), IntegerEntry(((I(T, U) + "_") + ba), bJ), IntegerEntry(((I(T, U) + "_") + T), bK), IntegerEntry(((I(T, U) + "_") + U), bL), IntegerEntry(T, (p(T) - bP)), IntegerEntry(U, (p(U) - bQ)), IntegerEntry(aZ, (p(aZ) - bM))]
598+ else throw(("Withdrawal amount lower than asset lp amount. Your Lp amount available: " + toString(bM)))
599+ else throw("Requires an lp asset as payment to remove locked amounts.")
600+ }
601+ else throw("Pool has no liquidity.")
598602 else throw(("Amount to be withdrawn greater than the amount available for withdrawal. Available: " + toString(bM)))
599603 else throw("You have no locked values ​​in the pool")
600604 else throw("Invalid Pool Key.")
621625 let bu = fromBase58String(getStringValue(this, D))
622626 let aY = fromBase58String(getStringValue(this, a))
623627 let bv = fromBase58String(getStringValue(this, E))
628+ let aZ = getStringValue(this, (b + I(T, U)))
624629 let bS = ab(((I(T, U) + "_") + T), false)
625630 let bT = ab(((I(T, U) + "_") + U), false)
626631 let bU = getIntegerValue(this, g)
674679 then if (if ((bS > 2))
675680 then true
676681 else (bT > 2))
677- then [ScriptTransfer(Address(r.caller.bytes), bX, ca), IntegerEntry(bZ, (p(bZ) - bX)), IntegerEntry(((I(T, U) + "_") + bZ), (R(I(T, U), bZ) - bX)), IntegerEntry(((I(T, U) + "_") + bY), (R(I(T, U), bY) + r.payments[0].amount)), IntegerEntry(((I(T, U) + "_") + toBase58String(aY)), r.payments[1].amount), IntegerEntry(bY, (p(bY) + r.payments[0].amount)), IntegerEntry(toBase58String(aY), r.payments[1].amount)]
682+ then [ScriptTransfer(Address(r.caller.bytes), bX, ca), IntegerEntry(bZ, (p(bZ) - bX)), IntegerEntry(((I(T, U) + "_") + bZ), (R(I(T, U), bZ) - bX)), IntegerEntry(((I(T, U) + "_") + bY), (R(I(T, U), bY) + r.payments[0].amount)), IntegerEntry(bY, (p(bY) + r.payments[0].amount)), IntegerEntry(toBase58String(aY), (p(toBase58String(aY)) + r.payments[1].amount))]
678683 else throw("Pool has no liquidity.")
679684 else throw("Swap denied! 0.003 AxAi is required for the swap fee.")
680685 else throw("Invalid rate asset")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "main_asset"
55
66 let b = "lp_asset_"
77
88 let c = "pool__"
99
1010 let d = "STAKING_AMOUNT_"
1111
1212 let e = "LEASE_AMOUNT_"
1313
1414 let f = "ID_"
1515
1616 let g = "percentage_rate_fee"
1717
1818 let h = "Deposit_Height_Of_"
1919
2020 let i = 100000000
2121
2222 let j = 1000000
2323
2424 let k = 10000000000
2525
2626 func l (m) = toString(valueOrErrorMessage(addressFromString(m), (("Can't parse " + m) + " as address")))
2727
2828
2929 func n (o) = toBase58String(valueOrErrorMessage(value(assetInfo(fromBase58String(o))).id, (("Asset Id: " + o) + " is invalid.")))
3030
3131
3232 func p (o) = {
3333 let q = getInteger(this, o)
3434 if ($isInstanceOf(q, "Int"))
3535 then {
3636 let r = q
3737 r
3838 }
3939 else 0
4040 }
4141
4242
4343 func s (o) = {
4444 let q = assetInfo(o)
4545 if ($isInstanceOf(q, "Asset"))
4646 then {
4747 let t = q
4848 t.name
4949 }
5050 else throw("Can't find asset")
5151 }
5252
5353
5454 let u = "activate"
5555
5656 let v = "activate_pools"
5757
5858 let w = "activate_swap"
5959
6060 let x = "activate_liquidity"
6161
6262 let y = "block_distribuition"
6363
6464 let z = "Total_Tokens_Locked_"
6565
6666 let A = "usdn_asset"
6767
6868 let B = "usdt_asset"
6969
7070 let C = "usdc_asset"
7171
7272 let D = "ngnn_asset"
7373
7474 let E = "eurn_asset"
7575
7676 let F = "WAVES"
7777
7878 let G = "accept_waves"
7979
8080 let H = unit
8181
8282 func I (J,K) = (((c + J) + "_") + K)
8383
8484
8585 func L (M) = {
8686 let q = getInteger(this, M)
8787 if ($isInstanceOf(q, "Int"))
8888 then {
8989 let r = q
9090 r
9191 }
9292 else false
9393 }
9494
9595
9696 func N (m,M) = {
9797 let q = getInteger(this, ((M + "_") + m))
9898 if ($isInstanceOf(q, "Int"))
9999 then {
100100 let O = q
101101 O
102102 }
103103 else 0
104104 }
105105
106106
107107 func P (m,M,t) = {
108108 let q = getInteger(this, ((((m + "_") + M) + "_") + t))
109109 if ($isInstanceOf(q, "Int"))
110110 then {
111111 let Q = q
112112 Q
113113 }
114114 else 0
115115 }
116116
117117
118118 func R (M,t) = {
119119 let q = getInteger(this, ((M + "_") + t))
120120 if ($isInstanceOf(q, "Int"))
121121 then {
122122 let Q = q
123123 Q
124124 }
125125 else 1
126126 }
127127
128128
129129 func S (T,U,m) = (((h + I(T, U)) + "_") + m)
130130
131131
132132 func V (m,M) = {
133133 let q = getInteger(this, ((("STAKE_LP_" + m) + "_") + M))
134134 if ($isInstanceOf(q, "Int"))
135135 then {
136136 let Q = q
137137 Q
138138 }
139139 else 0
140140 }
141141
142142
143143 func W () = {
144144 let q = getString(this, "admin")
145145 if ($isInstanceOf(q, "String"))
146146 then {
147147 let O = q
148148 Address(fromBase58String(O))
149149 }
150150 else this
151151 }
152152
153153
154154 func X (Y,Z,aa) = if (if ((Y == H))
155155 then (Z == "WAVES")
156156 else false)
157157 then if (aa)
158158 then true
159159 else throw("The smart contract does not currently support Waves.")
160160 else if ((Y == fromBase58String(Z)))
161161 then true
162162 else false
163163
164164
165165 func ab (M,ac) = {
166166 let q = getInteger(this, M)
167167 if ($isInstanceOf(q, "Int"))
168168 then {
169169 let Q = q
170170 Q
171171 }
172172 else if (ac)
173173 then (1 * i)
174174 else 1
175175 }
176176
177177
178178 @Callable(r)
179179 func constructor (ad,ae,af,ag,ah,ai,aj,ak,al) = if (if ((r.caller == this))
180180 then true
181181 else (r.caller == W()))
182182 then {
183183 let am = I(ae, af)
184184 let an = I(ae, ag)
185185 let ao = I(ae, ah)
186186 let ap = I(ae, F)
187187 let aq = I(ae, ad)
188188 let ar = I(ae, ai)
189189 let as = I(ag, af)
190190 let at = I(ag, ah)
191191 let au = I(ag, F)
192192 let av = I(ag, ad)
193193 let aw = I(ag, ai)
194194 let ax = I(af, ah)
195195 let ay = I(af, F)
196196 let az = I(af, ad)
197197 let aA = I(af, ai)
198198 let aB = I(ah, F)
199199 let aC = I(ah, ad)
200200 let aD = I(ah, ai)
201201 let aE = I(ad, F)
202202 let aF = I(ad, ai)
203203 let aG = I(ai, F)
204204 [StringEntry(a, ad), StringEntry(A, ae), StringEntry(C, ag), StringEntry(B, af), StringEntry(D, ah), BooleanEntry(G, al), IntegerEntry(g, aj), BooleanEntry(u, true), BooleanEntry(w, false), BooleanEntry(v, false), BooleanEntry(x, false), IntegerEntry(y, ak), IntegerEntry(am, 1), IntegerEntry(ap, 1), IntegerEntry(an, 1), IntegerEntry(ao, 1), IntegerEntry(aq, 1), IntegerEntry(as, 1), IntegerEntry(at, 1), IntegerEntry(au, 1), IntegerEntry(az, 1), IntegerEntry(ax, 1), IntegerEntry(ay, 1), IntegerEntry(aB, 1), IntegerEntry(aC, 1), IntegerEntry(aE, 1), IntegerEntry(aG, 1), IntegerEntry(aF, 1), IntegerEntry(aD, 1), IntegerEntry(aw, 1), IntegerEntry(ar, 1), IntegerEntry(aA, 1), StringEntry(E, ai)]
205205 }
206206 else throw("Only the Admin itself can invoke this function")
207207
208208
209209
210210 @Callable(r)
211211 func activate (aH) = if (if ((r.caller == this))
212212 then true
213213 else (r.caller == W()))
214214 then [BooleanEntry(u, aH)]
215215 else throw("Only the Admin itself can invoke this function")
216216
217217
218218
219219 @Callable(r)
220220 func maintenance (aI,aJ,aK) = if (if ((r.caller == this))
221221 then true
222222 else (r.caller == W()))
223223 then [BooleanEntry(v, aI), BooleanEntry(w, aJ), BooleanEntry(x, aK)]
224224 else throw("Only the Admin itself can invoke this function")
225225
226226
227227
228228 @Callable(r)
229229 func percentualRateFeeSwapEdit (aL) = if (if ((r.caller == this))
230230 then true
231231 else (r.caller == W()))
232232 then [IntegerEntry(g, aL)]
233233 else throw("Only the Admin itself can invoke this function")
234234
235235
236236
237237 @Callable(r)
238238 func acceptWaves (aM) = if (if ((r.caller == this))
239239 then true
240240 else (r.caller == W()))
241241 then [BooleanEntry(G, aM)]
242242 else throw("Only the Admin itself can invoke this function")
243243
244244
245245
246246 @Callable(r)
247247 func blockDistribution (aN) = if (if ((r.caller == this))
248248 then true
249249 else (r.caller == W()))
250250 then [IntegerEntry(y, aN)]
251251 else throw("Only the Admin itself can invoke this function")
252252
253253
254254
255255 @Callable(r)
256256 func addAdmin (m) = if (if ((r.caller == this))
257257 then true
258258 else (r.caller == W()))
259259 then [StringEntry("admin", m)]
260260 else throw("Only the Admin itself can invoke this function")
261261
262262
263263
264264 @Callable(r)
265265 func lpAssetCreateForPairPool (J,K,aO,aP) = {
266266 let aQ = if ((J == F))
267267 then F
268268 else s(fromBase58String(J))
269269 let aR = if ((K == F))
270270 then F
271271 else s(fromBase58String(K))
272272 let aS = if (aP)
273273 then aO
274274 else ((aQ + "_") + aR)
275275 let M = L(I(J, K))
276276 if (if ((r.caller == this))
277277 then true
278278 else (r.caller == W()))
279279 then if ((M != false))
280280 then {
281281 let aT = Issue(aS, ((("LP asset for pool liquidity in AxAi Swap pair " + J) + "_") + K), (1 * i), 8, true)
282282 let aU = calculateAssetId(aT)
283283 [StringEntry((b + I(J, K)), toBase58String(aU)), aT]
284284 }
285285 else throw("Invalid Pool Key. Try inverting the assets")
286286 else throw("Only the Admin itself can invoke this function")
287287 }
288288
289289
290290
291291 @Callable(r)
292292 func deposit (aV,T,U) = {
293293 let aW = getBooleanValue(this, u)
294294 let aX = getBooleanValue(this, x)
295295 let aY = getStringValue(this, a)
296296 let aZ = if (aV)
297297 then getStringValue(this, (b + I(T, U)))
298298 else aY
299299 if (aW)
300300 then if (!(aX))
301301 then if ((r.payments[0].assetId != fromBase58String(aZ)))
302302 then throw((("Invalid asset! Kindly Deposit Only " + aY) + " or valid asset lp"))
303303 else if (!(aV))
304304 then {
305305 let ba = toBase58String(r.caller.bytes)
306306 let bb = {
307307 let q = getInteger(this, ba)
308308 if ($isInstanceOf(q, "Int"))
309309 then {
310310 let Q = q
311311 Q
312312 }
313313 else 0
314314 }
315315 let bc = (bb + r.payments[0].amount)
316316 let bd = IntegerEntry(ba, bc)
317317 let be = IntegerEntry((h + ba), height)
318318 let bf = {
319319 let q = getInteger(this, "Total_Tokens_Locked:")
320320 if ($isInstanceOf(q, "Int"))
321321 then {
322322 let Q = q
323323 Q
324324 }
325325 else 0
326326 }
327327 let bg = (bf + r.payments[0].amount)
328328 let bh = IntegerEntry("Total_Tokens_Locked:", bg)
329329 [bd, be, bh]
330330 }
331331 else {
332332 let bi = I(T, U)
333333 let M = L(bi)
334334 if ((M != false))
335335 then {
336336 let ba = toBase58String(r.caller.bytes)
337337 let bb = {
338338 let q = getInteger(this, ((("STAKE_LP_" + ba) + "_") + bi))
339339 if ($isInstanceOf(q, "Int"))
340340 then {
341341 let Q = q
342342 Q
343343 }
344344 else 0
345345 }
346346 let bc = (bb + r.payments[0].amount)
347347 let bd = IntegerEntry(((("STAKE_LP_" + ba) + "_") + bi), bc)
348348 let be = IntegerEntry(((((h + "_") + ba) + "_") + bi), height)
349349 let bf = {
350350 let q = getInteger(this, ("Total_Tokens_LP_Locked_" + bi))
351351 if ($isInstanceOf(q, "Int"))
352352 then {
353353 let Q = q
354354 Q
355355 }
356356 else 0
357357 }
358358 let bg = (bf + r.payments[0].amount)
359359 let bh = IntegerEntry(("Total_Tokens_LP_Locked_" + bi), bg)
360360 [bd, be, bh]
361361 }
362362 else throw("Invalid Pool key.")
363363 }
364364 else throw("liquidity is currently under maintenance.")
365365 else throw("dApp is currently under maintenance.")
366366 }
367367
368368
369369
370370 @Callable(r)
371371 func remove (aV,T,U,bj) = {
372372 let aW = getBooleanValue(this, u)
373373 let aX = getBooleanValue(this, x)
374374 let bk = r.payments[0]
375375 let aY = fromBase58String(getStringValue(this, a))
376376 if (aW)
377377 then if (!(aX))
378378 then {
379379 let ba = toBase58String(r.caller.bytes)
380380 let bb = {
381381 let q = if (aV)
382382 then getIntegerValue(this, ((("STAKE_LP_" + ba) + "_") + I(T, U)))
383383 else getIntegerValue(this, ba)
384384 if ($isInstanceOf(q, "Int"))
385385 then {
386386 let Q = q
387387 Q
388388 }
389389 else 0
390390 }
391391 let bl = if (aV)
392392 then ((((h + "_") + ba) + "_") + I(T, U))
393393 else (h + ba)
394394 let bf = if (aV)
395395 then getIntegerValue(this, ("Total_Tokens_LP_Locked_" + I(T, U)))
396396 else getIntegerValue(this, "Total_Tokens_Locked:")
397397 let bg = (bf - bj)
398398 let bm = (height - getIntegerValue(this, bl))
399399 let bn = getIntegerValue(this, y)
400400 let bo = ((bm * bn) * i)
401401 let bp = (bo / (bf / bj))
402402 if ((0 > bj))
403403 then throw(if (aV)
404404 then (((("Can't withdraw negative " + T) + "/") + U) + " amount")
405405 else "Can't withdraw negative AxAi amount")
406406 else {
407407 let bc = (bb - bj)
408408 if ((0 > bc))
409409 then throw(if (aV)
410410 then (((("Not enough Asset Lp " + T) + "/") + U) + " balance")
411411 else "Not enough AxAi balance")
412412 else [IntegerEntry(if (aV)
413413 then ((("STAKE_LP_" + ba) + "_") + I(T, U))
414414 else ba, bc), IntegerEntry(if (aV)
415415 then ("Total_Tokens_LP_Locked_" + I(T, U))
416416 else "Total_Tokens_Locked:", bg), ScriptTransfer(r.caller, bj, if (aV)
417417 then fromBase58String(getStringValue(this, (b + I(T, U))))
418418 else aY), ScriptTransfer(r.caller, bp, aY)]
419419 }
420420 }
421421 else throw("liquidity is currently under maintenance.")
422422 else throw("dApp is currently under maintenance.")
423423 }
424424
425425
426426
427427 @Callable(r)
428428 func addLiquidity (T,U) = {
429429 let aW = getBooleanValue(this, u)
430430 let bq = getBooleanValue(this, v)
431431 let aa = getBooleanValue(this, G)
432432 let M = L(I(T, U))
433433 let J = r.payments[0].assetId
434434 let K = r.payments[1].assetId
435435 let br = fromBase58String(getStringValue(this, A))
436436 let bs = fromBase58String(getStringValue(this, C))
437437 let bt = fromBase58String(getStringValue(this, B))
438438 let bu = fromBase58String(getStringValue(this, D))
439439 let bv = fromBase58String(getStringValue(this, E))
440440 let aY = fromBase58String(getStringValue(this, a))
441441 let aZ = getStringValue(this, (b + I(T, U)))
442442 let bw = if ((2 > ab(((I(T, U) + "_") + T), false)))
443443 then r.payments[0].amount
444444 else ab(((I(T, U) + "_") + T), false)
445445 let bx = if ((2 > ab(((I(T, U) + "_") + T), false)))
446446 then r.payments[1].amount
447447 else ab(((I(T, U) + "_") + U), false)
448448 let by = ab(aZ, true)
449449 let bz = ((bw + bx) / by)
450450 let bA = (r.payments[0].amount * (bx / bw))
451451 let bB = if ((r.payments[1].amount == bA))
452452 then true
453453 else false
454454 if (aW)
455455 then if (!(bq))
456456 then if (if (if (!((J == K)))
457457 then X(J, T, aa)
458458 else false)
459459 then X(K, U, aa)
460460 else false)
461461 then if (if (if (if (if (if (if (if ((J == br))
462462 then true
463463 else (J == bs))
464464 then true
465465 else (J == bt))
466466 then true
467467 else (J == bu))
468468 then true
469469 else (J == aY))
470470 then true
471471 else (J == H))
472472 then true
473473 else (J == bv))
474474 then if (if (if (if (if (if ((K == br))
475475 then true
476476 else (K == bs))
477477 then true
478478 else (K == bt))
479479 then true
480480 else (K == bu))
481481 then true
482482 else (K == aY))
483483 then true
484484 else (K == H))
485485 then true
486486 else (K == bv)
487487 else false)
488488 then if ((M != false))
489489 then if (bB)
490490 then {
491491 let ba = toBase58String(r.caller.bytes)
492492 let bb = N(ba, I(T, U))
493493 let bC = P(ba, I(T, U), T)
494494 let bD = P(ba, I(T, U), U)
495495 let bE = R(I(T, U), T)
496496 let bF = R(I(T, U), U)
497497 let bG = if ((bw == r.payments[0].amount))
498498 then (1 * i)
499499 else ((r.payments[0].amount + r.payments[1].amount) / ((bw + bx) / by))
500500 let bH = (bC + r.payments[0].amount)
501501 let bI = (bD + r.payments[1].amount)
502502 let bJ = (bb + bG)
503503 let bK = (bE + r.payments[0].amount)
504504 let bL = (bF + r.payments[1].amount)
505505 [Reissue(fromBase58String(aZ), bG, true), ScriptTransfer(Address(r.caller.bytes), bG, fromBase58String(aZ)), IntegerEntry(S(T, U, ba), height), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + T), bH), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + U), bI), IntegerEntry(((I(T, U) + "_") + ba), bJ), IntegerEntry(((I(T, U) + "_") + T), bK), IntegerEntry(((I(T, U) + "_") + U), bL), IntegerEntry(T, (p(T) + r.payments[0].amount)), IntegerEntry(U, (p(U) + r.payments[1].amount)), IntegerEntry(aZ, (p(aZ) + bG))]
506506 }
507507 else throw(((((("Payment of invalid 1/1 amounts to the Pool. Try Asset2: {value:" + toString((r.payments[0].amount * (bx / bw)))) + "} Received: ") + toString(r.payments[1].amount)) + " Validate: ") + toString(bB)))
508508 else throw("Invalid Pool Key.")
509509 else throw("Invalid Asset1 or Asset2!")
510510 else throw("Asset1 cannot be equal to Asset2")
511511 else throw("liquidity is currently under maintenance.")
512512 else throw("dApp is currently under maintenance.")
513513 }
514514
515515
516516
517517 @Callable(r)
518518 func removeLiquidity (T,U,bM) = {
519519 let ba = toBase58String(r.caller.bytes)
520520 let aW = getBooleanValue(this, u)
521521 let bq = getBooleanValue(this, v)
522522 let aa = getBooleanValue(this, G)
523523 let bi = I(T, U)
524524 let M = L(bi)
525525 let J = if ((T == F))
526526 then if (aa)
527527 then H
528528 else throw("The smart contract does not currently support Waves.")
529529 else fromBase58String(T)
530530 let K = if ((U == F))
531531 then if (aa)
532532 then H
533533 else throw("The smart contract does not currently support Waves.")
534534 else fromBase58String(U)
535535 let br = fromBase58String(getStringValue(this, A))
536536 let bs = fromBase58String(getStringValue(this, C))
537537 let bt = fromBase58String(getStringValue(this, B))
538538 let bu = fromBase58String(getStringValue(this, D))
539539 let aY = fromBase58String(getStringValue(this, a))
540540 let bv = fromBase58String(getStringValue(this, E))
541541 let aZ = getStringValue(this, (b + I(T, U)))
542542 let bb = N(ba, I(T, U))
543543 let bN = V(ba, bi)
544544 let bO = ab(aZ, true)
545545 let bw = ab(((I(T, U) + "_") + T), false)
546546 let bx = ab(((I(T, U) + "_") + U), false)
547547 if (aW)
548548 then if (!(bq))
549549 then if (!((T == U)))
550550 then if (if (if (if (if (if (if (if ((J == br))
551551 then true
552552 else (J == bs))
553553 then true
554554 else (J == bt))
555555 then true
556556 else (J == bu))
557557 then true
558558 else (J == aY))
559559 then true
560560 else (J == H))
561561 then true
562562 else (J == bv))
563563 then if (if (if (if (if (if ((K == br))
564564 then true
565565 else (K == bs))
566566 then true
567567 else (K == bt))
568568 then true
569569 else (K == bu))
570570 then true
571571 else (K == aY))
572572 then true
573573 else (K == H))
574574 then true
575575 else (K == bv)
576576 else false)
577577 then if ((M != false))
578578 then if (!((bb == 0)))
579579 then if (((bb - bN) >= bM))
580- then {
581- let bP = toInt(((fraction(toBigInt(r.payments[0].amount), toBigInt(i), toBigInt(bO)) * toBigInt(bw)) / toBigInt(i)))
582- let bQ = toInt(((fraction(toBigInt(r.payments[0].amount), toBigInt(i), toBigInt(bO)) * toBigInt(bx)) / toBigInt(i)))
583- let bE = R(I(T, U), T)
584- let bF = R(I(T, U), U)
585- let bC = P(ba, I(T, U), T)
586- let bD = P(ba, I(T, U), U)
587- let bH = (bC - bP)
588- let bI = (bD - bQ)
589- let bJ = (bb - bM)
590- let bK = (bE - bP)
591- let bL = (bF - bQ)
592- if ((r.payments[0].assetId == fromBase58String(aZ)))
593- then if ((bM == r.payments[0].amount))
594- then [Burn(fromBase58String(aZ), bM), ScriptTransfer(Address(r.caller.bytes), bP, J), ScriptTransfer(Address(r.caller.bytes), bQ, K), IntegerEntry(S(T, U, ba), height), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + T), bH), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + U), bI), IntegerEntry(((I(T, U) + "_") + ba), bJ), IntegerEntry(((I(T, U) + "_") + T), bK), IntegerEntry(((I(T, U) + "_") + U), bL), IntegerEntry(T, (p(T) - bP)), IntegerEntry(U, (p(U) - bQ)), IntegerEntry(aZ, (p(aZ) - bM))]
595- else throw(("Withdrawal amount lower than asset lp amount. Your Lp amount available: " + toString(bM)))
596- else throw("Requires an lp asset as payment to remove locked amounts.")
597- }
580+ then if (if ((bw > 2))
581+ then true
582+ else (bx > 2))
583+ then {
584+ let bP = toInt(((fraction(toBigInt(r.payments[0].amount), toBigInt(i), toBigInt(bO)) * toBigInt(bw)) / toBigInt(i)))
585+ let bQ = toInt(((fraction(toBigInt(r.payments[0].amount), toBigInt(i), toBigInt(bO)) * toBigInt(bx)) / toBigInt(i)))
586+ let bE = R(I(T, U), T)
587+ let bF = R(I(T, U), U)
588+ let bC = P(ba, I(T, U), T)
589+ let bD = P(ba, I(T, U), U)
590+ let bH = (bC - bP)
591+ let bI = (bD - bQ)
592+ let bJ = (bb - bM)
593+ let bK = (bE - bP)
594+ let bL = (bF - bQ)
595+ if ((r.payments[0].assetId == fromBase58String(aZ)))
596+ then if ((bM == r.payments[0].amount))
597+ then [Burn(fromBase58String(aZ), bM), ScriptTransfer(Address(r.caller.bytes), bP, J), ScriptTransfer(Address(r.caller.bytes), bQ, K), IntegerEntry(S(T, U, ba), height), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + T), bH), IntegerEntry(((((ba + "_") + I(T, U)) + "_") + U), bI), IntegerEntry(((I(T, U) + "_") + ba), bJ), IntegerEntry(((I(T, U) + "_") + T), bK), IntegerEntry(((I(T, U) + "_") + U), bL), IntegerEntry(T, (p(T) - bP)), IntegerEntry(U, (p(U) - bQ)), IntegerEntry(aZ, (p(aZ) - bM))]
598+ else throw(("Withdrawal amount lower than asset lp amount. Your Lp amount available: " + toString(bM)))
599+ else throw("Requires an lp asset as payment to remove locked amounts.")
600+ }
601+ else throw("Pool has no liquidity.")
598602 else throw(("Amount to be withdrawn greater than the amount available for withdrawal. Available: " + toString(bM)))
599603 else throw("You have no locked values ​​in the pool")
600604 else throw("Invalid Pool Key.")
601605 else throw("Invalid Asset1 or Asset2!")
602606 else throw("Asset1 cannot be equal to Asset2")
603607 else throw("liquidity is currently under maintenance.")
604608 else throw("dApp is currently under maintenance.")
605609 }
606610
607611
608612
609613 @Callable(r)
610614 func swap (T,U) = {
611615 let ba = toBase58String(r.caller.bytes)
612616 let aa = getBooleanValue(this, G)
613617 let aW = getBooleanValue(this, u)
614618 let bR = getBooleanValue(this, w)
615619 let bi = I(T, U)
616620 let M = L(bi)
617621 let J = r.payments[0].assetId
618622 let br = fromBase58String(getStringValue(this, A))
619623 let bs = fromBase58String(getStringValue(this, C))
620624 let bt = fromBase58String(getStringValue(this, B))
621625 let bu = fromBase58String(getStringValue(this, D))
622626 let aY = fromBase58String(getStringValue(this, a))
623627 let bv = fromBase58String(getStringValue(this, E))
628+ let aZ = getStringValue(this, (b + I(T, U)))
624629 let bS = ab(((I(T, U) + "_") + T), false)
625630 let bT = ab(((I(T, U) + "_") + U), false)
626631 let bU = getIntegerValue(this, g)
627632 let bV = toInt(((toBigInt(r.payments[0].amount) * fraction(toBigInt(i), toBigInt(bT), toBigInt(bS))) / toBigInt(i)))
628633 let bW = toInt(((toBigInt(r.payments[0].amount) * fraction(toBigInt(i), toBigInt(bS), toBigInt(bT))) / toBigInt(i)))
629634 let bX = if (if ((J == unit))
630635 then (T == F)
631636 else false)
632637 then bV
633638 else if ((J == fromBase58String(T)))
634639 then bV
635640 else bW
636641 let bY = if ((J == unit))
637642 then F
638643 else if ((J == fromBase58String(T)))
639644 then T
640645 else U
641646 let bZ = if ((J == unit))
642647 then F
643648 else if ((J == fromBase58String(T)))
644649 then U
645650 else T
646651 let ca = if ((J == unit))
647652 then H
648653 else if ((J == fromBase58String(T)))
649654 then fromBase58String(U)
650655 else fromBase58String(T)
651656 if (aW)
652657 then if (!(bR))
653658 then if (if (!((T == U)))
654659 then if (X(J, T, aa))
655660 then true
656661 else X(J, U, aa)
657662 else false)
658663 then if (if (if (if (if (if (if ((J == br))
659664 then true
660665 else (J == bs))
661666 then true
662667 else (J == bt))
663668 then true
664669 else (J == bu))
665670 then true
666671 else (J == aY))
667672 then true
668673 else (J == bv))
669674 then true
670675 else (J == H))
671676 then if ((M != false))
672677 then if ((r.payments[1].assetId == aY))
673678 then if ((r.payments[1].amount == 300000))
674679 then if (if ((bS > 2))
675680 then true
676681 else (bT > 2))
677- then [ScriptTransfer(Address(r.caller.bytes), bX, ca), IntegerEntry(bZ, (p(bZ) - bX)), IntegerEntry(((I(T, U) + "_") + bZ), (R(I(T, U), bZ) - bX)), IntegerEntry(((I(T, U) + "_") + bY), (R(I(T, U), bY) + r.payments[0].amount)), IntegerEntry(((I(T, U) + "_") + toBase58String(aY)), r.payments[1].amount), IntegerEntry(bY, (p(bY) + r.payments[0].amount)), IntegerEntry(toBase58String(aY), r.payments[1].amount)]
682+ then [ScriptTransfer(Address(r.caller.bytes), bX, ca), IntegerEntry(bZ, (p(bZ) - bX)), IntegerEntry(((I(T, U) + "_") + bZ), (R(I(T, U), bZ) - bX)), IntegerEntry(((I(T, U) + "_") + bY), (R(I(T, U), bY) + r.payments[0].amount)), IntegerEntry(bY, (p(bY) + r.payments[0].amount)), IntegerEntry(toBase58String(aY), (p(toBase58String(aY)) + r.payments[1].amount))]
678683 else throw("Pool has no liquidity.")
679684 else throw("Swap denied! 0.003 AxAi is required for the swap fee.")
680685 else throw("Invalid rate asset")
681686 else throw("Invalid Swap Key.")
682687 else throw("Invalid Asset1 or Asset2!")
683688 else throw("Asset1 cannot be equal to Asset2")
684689 else throw("Swap is currently under maintenance.")
685690 else throw("dApp is currently under maintenance.")
686691 }
687692
688693
689694 @Verifier(cb)
690695 func cc () = {
691696 let q = cb
692697 if ($isInstanceOf(q, "Order"))
693698 then {
694699 let cd = q
695700 true
696701 }
697702 else if ($isInstanceOf(q, "ExchangeTransaction"))
698703 then {
699704 let ce = q
700705 true
701706 }
702707 else sigVerify(cb.bodyBytes, cb.proofs[0], cb.senderPublicKey)
703708 }
704709

github/deemru/w8io/c3f4982 
76.53 ms