From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id YJa6DXzuzGJUQQEAbAwnHQ (envelope-from ) for ; Tue, 12 Jul 2022 05:46:04 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id YEjNDHzuzGL4VAEAG6o9tA (envelope-from ) for ; Tue, 12 Jul 2022 05:46:04 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id F0864327D4 for ; Tue, 12 Jul 2022 05:46:02 +0200 (CEST) Received: from localhost ([::1]:46652 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oB6qX-0000Vb-QO for larch@yhetil.org; Mon, 11 Jul 2022 23:46:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53926) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oB6pJ-0000V5-Ak for emacs-orgmode@gnu.org; Mon, 11 Jul 2022 23:44:45 -0400 Received: from mail-vs1-xe33.google.com ([2607:f8b0:4864:20::e33]:45587) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oB6pH-0001qx-KD for emacs-orgmode@gnu.org; Mon, 11 Jul 2022 23:44:44 -0400 Received: by mail-vs1-xe33.google.com with SMTP id s1so3222414vsr.12 for ; Mon, 11 Jul 2022 20:44:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=DdMRuTSWr6CJ3+ZRxH6Gx5lFBu6tKWmhE6OKQOVxAe8=; b=Bmdqc15ubGpnf4zW8ztbZkVIzm1tXO3X5yWKSF81cw533Z9Oe1DGs/x+bw3YVW9XHZ 2V5RTOcXE56wKmh4HgFTgcSKnhWnHJ7te0fai5Lr6sobC6FAw97+6sz4C8VspZlwo1ep FP8kK4TAfyOjJ48VQRplunKCsCF6WypRzZaYN9L8iHQA6W/eZiXumyOnI3dPW3ID1YLO zLojIYTvw8Y/ORmrhFREoGCqXznEvZ42Ghq2H9PyZk/JqLpmpPv3Nhkww/hn5ZnspawG sZuAah1FhaU/Iz8spIlk2B2cqclRzoRGhNs8xXWfl4TjJ8VGiPUJFGnTGOZE/e7pK5LS 1zNg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=DdMRuTSWr6CJ3+ZRxH6Gx5lFBu6tKWmhE6OKQOVxAe8=; b=PGsG6Sb6UXUum4ILDMpgznPm6e34bQscMb0yRpmQ1JhbAtjc2B46eKLHoM2xezENGw Ddq7RZuaLeTICJfozG5oYYBupo6mo+QREqUqiXuCqd7hHQ8TS8w+zt9bEdJyuYzDrSG9 8EEz3wvWoizke1MOYx6sPtir99pIyR1MdnDkTeDUv763i5ekvJ8+gjft2qB5jDLZba8j hdBOI7QvjT1PcuG8Oi+0oURAU6/LawdO8KB3yyUFM6uYOZ4jeKANN2lyuJnLBuFO4ZYe 9d2KKO3X8vWTQzce/ilHKLmR/7IYtSIbOzQPPZ63UL3ikZ8uXgJOLFaRm6SRIHQx3hX6 u7xA== X-Gm-Message-State: AJIora/osgLLbIWYDXtlUDGfU3Ws1n7Irg+hNXarOP8hBWduYxS8eiFr EVYKAV0QS6JECpqT2ddpb+IU8yOkuBw1dixic/U0pv1v X-Google-Smtp-Source: AGRyM1sn0IUwG+XebaiqwzAq1JTErb5hb8on+sAh5ENsalxYjGVPRE8k6Uj/T+uekI9L0Fo2bGDs9uEBWCVT+NAoG/k= X-Received: by 2002:a05:6102:f9b:b0:357:5f8c:f619 with SMTP id e27-20020a0561020f9b00b003575f8cf619mr2880333vsv.16.1657597481821; Mon, 11 Jul 2022 20:44:41 -0700 (PDT) MIME-Version: 1.0 From: Max Mikhanosha Date: Mon, 11 Jul 2022 23:44:31 -0400 Message-ID: Subject: BUG+PATCH org-capture hangs under Cygwin/X To: emacs-orgmode@gnu.org Content-Type: multipart/mixed; boundary="00000000000015ef5105e3937de4" Received-SPF: pass client-ip=2607:f8b0:4864:20::e33; envelope-from=max.mikhanosha@gmail.com; helo=mail-vs1-xe33.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1657597563; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=5aOEKJdF3ZAtxDWZN3ltdjggx2cYZgBcRlHhDVV60rQ=; b=OOqxZkcaBr5CHPfrFIO3mKNt2nTqQmsk4bwXW6qDddCcV+NN0qLMQWH5/f0R49qtlfPE4/ rQV8IjcqV8unF7WukXyDvyYFfnBS0OOnGJ00VOnALh3MXn3CZOZMEw0JAr5NP+ft9Qr3Wc P2Lwy1r/AnV5bbzUK2VsHlM8VjJKqrjbZ7lgWSA7LwI8aM/vd468biw2iO63qZXjc9J9NP 7OotvEvMxDab7h36gnZkQVRCWtDGLoEZQpuYa8udLS6N2K4G+x7+MmmuXeypt6FkqUXgFM T5wC7OYaEZNlF2qJXKenZTTSaLiYvN6xv4c0UiKp+TQ8vtlhdZnIfXuMP93O3g== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1657597563; a=rsa-sha256; cv=none; b=TLC5AV97JI/aJ14sIJFeqb5xHFpHtXcSWsuF+FD5ohtz7Wuw83CfT1FQ+gB5pkz0rOA4dz 8c2e/yT9gN/ckG/vcuyoiRmEku7kOmqcEcMjmYcIy3Yvabuv1O11OvV6WTgh8hliYL58vB K7Kr+SN8EDiM7S3+To4/em1iQIPH1a52r7QeKYVCsJgrhqaly+CczMW7xfGjfUroZtGcRy 9S9LgWa7H565LY75JSQfsD9fV9v55Gho+G6Ic95u5Bz3wiIQY/pL4PgYARE0kfoPOCYo/E tSgwsqjpcfGjHqmB8ktSTv4PMynlvmHmc5Vwn+cEP+sES8tmCM5fA2HTENyH4g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=gmail.com header.s=20210112 header.b=Bmdqc15u; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 6.25 Authentication-Results: aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=gmail.com header.s=20210112 header.b=Bmdqc15u; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: F0864327D4 X-Spam-Score: 6.25 X-Migadu-Scanner: scn1.migadu.com X-TUID: njI3B4mc8zSK --00000000000015ef5105e3937de4 Content-Type: multipart/alternative; boundary="00000000000015ef4f05e3937de2" --00000000000015ef4f05e3937de2 Content-Type: text/plain; charset="UTF-8" Due to various reasons I'm now using Cygwin/X Emacs, and for this emacs, (gui-get-selection) method is kind of slow (about 0.2) seconds. While this is not a big deal usually, (org-get-x-clipboard) calls (gui-get-selection) 4 times with different formats (utf8, text, compound-text and string). On top of that, (org-capture-fill-template) calls (org-get-x-clipboard) 3 times with PRIMARY, CLIPBOARD and SECONDARY, and then calls it again to make values for the ^%C expansion. In addition it also calls (current-kill 0), which in itself calls (gui-selection-value), which also may call (gui-get-selection up to 4 times), and has a side effect of clearing the clipboard if select-use-clipboard is true. All of the above calls are made even if template parameters don't have any expansions that reference selection. This results in org-capture having about 16 second hang for me on Cygwin/X when clipboard and selection are completely empty. Attached patch changes it so that we only call (org-get-x-clipboard) and (current-kill 0) lazily. The logic had not changed, we just don't pre-cache values that we don't need. --00000000000015ef4f05e3937de2 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Due to various reasons I'm now using Cygwin/X Emacs, a= nd for this emacs, (gui-get-selection) method is kind of slow (about 0.2) s= econds.

While this is not a big deal usually, (org-get-x= -clipboard) calls (gui-get-selection) 4 times with different formats (utf8,= text, compound-text and string).

On top of that, = (org-capture-fill-template) calls (org-get-x-clipboard) 3 times with PRIMAR= Y, CLIPBOARD and SECONDARY, and then calls it again to make values for the = ^%C expansion.

In addition=C2=A0it also calls (cur= rent-kill 0), which in itself calls (gui-selection-value), which also may c= all (gui-get-selection up to 4 times), and has a side effect of clearing th= e clipboard if select-use-clipboard is true.

All o= f the above calls are made even if template parameters don't have any e= xpansions that reference selection.

This results i= n org-capture having about 16 second hang=C2=A0for me on Cygwin/X when clip= board and selection are completely=C2=A0empty.

Att= ached patch changes it so that we only call (org-get-x-clipboard) and (curr= ent-kill 0) lazily. The logic had not changed, we just don't pre-cache = values that we don't need.

--00000000000015ef4f05e3937de2-- --00000000000015ef5105e3937de4 Content-Type: application/octet-stream; name="0001-org-capture-fix-hang-under-Cygwin-X-emacs.patch" Content-Disposition: attachment; filename="0001-org-capture-fix-hang-under-Cygwin-X-emacs.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_l5hmqgcm0 RnJvbSA0Y2M1MzllMWIzNzkzODFmMGI2NDk2ZmY5MDFlMzUxYzg1ODAzNjExIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXggTWlraGFub3NoYSA8bWF4Lm1pa2hhbm9zaGFAZ21haWwu Y29tPgpEYXRlOiBUdWUsIDEyIEp1bCAyMDIyIDA0OjE5OjEyICswMTAwClN1YmplY3Q6IFtQQVRD SF0gICBvcmctY2FwdHVyZTogZml4IGhhbmcgdW5kZXIgQ3lnd2luL1ggZW1hY3MuCgogICogb3Jn LWNhcHR1cmUuZWwgKG9yZy1jYXB0dXJlLWZpbGwtdGVtcGxhdGUpOiBjaGFuZ2UgaXQgc28gdGhh dAogIChjdXJyZW50LWtpbGwgMCkgYW5kIChvcmctZ2V0LXgtc2VsZWN0aW9uKSBhcmUgY2FsbGVk IG9ubHkgbGF6aWx5IG9uCiAgYXMgbmVlZGVkIGJhc2lzLCBhbmQgdGhlaXIgcmVzdWx0cyBhcmUg Y2FjaGVkLgoKICBUaGlzIHJlZHVjZXMgd29yc3QgY2FzZSBvZiBjYWxsaW5nIChndWktZ2V0LXNl bGVjdGlvbikgZnJvbSAyOCB0aW1lcwogIHRvIDEyICh3b3JzdCBjYXNlIGJlaW5nIGJvdGggY2xp cGJvYXJkIGFuZCBzZWxlY3Rpb24gYmVpbmcgZW1wdHkpCiAgYW5kIGluIHRoZSBiZXN0IGNhc2Ug b2YgdGhlcmUgYmVpbmcgbm8gJXggJWMgb3IgJV5DIHRlbXBsYXRlCiAgYXJndW1lbnRzIHRoZXJl IHdpbGwgYmUgemVybyBjYWxscwotLS0KIGxpc3Avb3JnLWNhcHR1cmUuZWwgfCA0NiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAz MCBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saXNwL29yZy1j YXB0dXJlLmVsIGIvbGlzcC9vcmctY2FwdHVyZS5lbAppbmRleCA5ZWYxNjBkMTYuLmQ3NTE5MWVk NSAxMDA2NDQKLS0tIGEvbGlzcC9vcmctY2FwdHVyZS5lbAorKysgYi9saXNwL29yZy1jYXB0dXJl LmVsCkBAIC0xNTg5LDExICsxNTg5LDggQEAgKGRlZnVuIG9yZy1jYXB0dXJlLWZpbGwtdGVtcGxh dGUgKCZvcHRpb25hbCB0ZW1wbGF0ZSBpbml0aWFsIGFubm90YXRpb24pCiAJICh2LVQgKGZvcm1h dC10aW1lLXN0cmluZyAob3JnLXRpbWUtc3RhbXAtZm9ybWF0IHQpIHRpbWUpKQogCSAodi11IChm b3JtYXQtdGltZS1zdHJpbmcgKG9yZy10aW1lLXN0YW1wLWZvcm1hdCBuaWwgdCkgdGltZSkpCiAJ ICh2LVUgKGZvcm1hdC10aW1lLXN0cmluZyAob3JnLXRpbWUtc3RhbXAtZm9ybWF0IHQgdCkgdGlt ZSkpCi0JICh2LWMgKGFuZCBraWxsLXJpbmcgKGN1cnJlbnQta2lsbCAwKSkpCi0JICh2LXggKG9y IChvcmctZ2V0LXgtY2xpcGJvYXJkICdQUklNQVJZKQotCQkgIChvcmctZ2V0LXgtY2xpcGJvYXJk ICdDTElQQk9BUkQpCi0JCSAgKG9yZy1nZXQteC1jbGlwYm9hcmQgJ1NFQ09OREFSWSkKLQkJICAi IikpCQkJO2Vuc3VyZSBpdCBpcyBhIHN0cmluZworICAgICAgICAgKG9idGFpbmVkLXYtYyBuaWwp CisgICAgICAgICAodi1jIG5pbCkKICAgICAgICAgIDs7IGBpbml0aWFsJyBhbmQgYGFubm90YXRp b24nIG1pZ2h0IGhhdmUgYmVlbiBwYXNzZWQuICBCdXQgaWYKIAkgOzsgdGhlIHByb3BlcnR5IGxp c3QgaGFzIHRoZW0sIHdlIHByZWZlciB0aG9zZSB2YWx1ZXMuCiAJICh2LWkgKG9yIChwbGlzdC1n ZXQgb3JnLXN0b3JlLWxpbmstcGxpc3QgOmluaXRpYWwpCkBAIC0xNjMwLDEzICsxNjI3LDIxIEBA IChkZWZ1biBvcmctY2FwdHVyZS1maWxsLXRlbXBsYXRlICgmb3B0aW9uYWwgdGVtcGxhdGUgaW5p dGlhbCBhbm5vdGF0aW9uKQogCQkiIikpCiAJICh2LWYgKG9yIChvcmctY2FwdHVyZS1nZXQgOm9y aWdpbmFsLWZpbGUtbm9uZGlyZWN0b3J5KSAiIikpCiAJICh2LUYgKG9yIChvcmctY2FwdHVyZS1n ZXQgOm9yaWdpbmFsLWZpbGUpICIiKSkKLQkgKG9yZy1jYXB0dXJlLS1jbGlwYm9hcmRzCi0JICAo ZGVscSBuaWwKLQkJKGxpc3Qgdi1pCi0JCSAgICAgIChvcmctZ2V0LXgtY2xpcGJvYXJkICdQUklN QVJZKQotCQkgICAgICAob3JnLWdldC14LWNsaXBib2FyZCAnQ0xJUEJPQVJEKQotCQkgICAgICAo b3JnLWdldC14LWNsaXBib2FyZCAnU0VDT05EQVJZKQotCQkgICAgICB2LWMpKSkpCisgICAgICAg ICA7OyBPbiBDeWd3aW4vWCBvcmctZ2V0LXgtY2xpcGJvYXJkIGlzIGV4dHJlbWVseSBzbG93Cisg ICAgICAgICA7OyB0aGVyZWZvcmUgdXNlIGxhenkgZXZhbHVhdGlvbiBmb3IgY2FsbGluZyB4LW9y Zy1nZXQtY2xpcGJvYXJkCisgICAgICAgICAoeC1jbGlwLWNhY2hlIChsaXN0IChsaXN0ICdQUklN QVJZIG5pbCBuaWwpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0ICdDTElQQk9B UkQgbmlsIG5pbCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3QgJ1NFQ09OREFS WSBuaWwgbmlsKSkpCisgICAgICAgICBvcmctY2FwdHVyZS0tY2xpcGJvYXJkcykKKyAgICAoY2wt ZmxldCAoKGN1cnJlbnQta2lsbC1jYWNoZWQgKCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKGlmIG9idGFpbmVkLXYtYyB2LWMKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoc2V0cSBvYnRhaW5lZC12LWMgdAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHYtYyAoYW5kIGtpbGwtcmluZyAoY3VycmVudC1raWxsIDApKSkp KQorICAgICAgICAgICAgICAoeC1jbGlwYm9hcmQtY2FjaGVkIChzZWxlY3Rpb24pCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxldCAoKGNhY2hlIChhc3NvYyBzZWxlY3Rpb24g eC1jbGlwLWNhY2hlKSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaWYg KHNlY29uZCBjYWNoZSkgKHRoaXJkIGNhY2hlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoc2V0ZiAoc2Vjb25kIGNhY2hlKSB0KQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAoc2V0ZiAodGhpcmQgY2FjaGUpIChvcmctZ2V0LXgtY2xpcGJvYXJk IHNlbGVjdGlvbikpKSkpKQogICAgICAgKHNldHEgb3JnLXN0b3JlLWxpbmstcGxpc3QgKHBsaXN0 LXB1dCBvcmctc3RvcmUtbGluay1wbGlzdCA6YW5ub3RhdGlvbiB2LWEpKQogICAgICAgKHNldHEg b3JnLXN0b3JlLWxpbmstcGxpc3QgKHBsaXN0LXB1dCBvcmctc3RvcmUtbGluay1wbGlzdCA6aW5p dGlhbCB2LWkpKQogICAgICAgKHVubGVzcyB0ZW1wbGF0ZQpAQCAtMTcwMSw3ICsxNzA2LDcgQEAg KGRlZnVuIG9yZy1jYXB0dXJlLWZpbGwtdGVtcGxhdGUgKCZvcHRpb25hbCB0ZW1wbGF0ZSBpbml0 aWFsIGFubm90YXRpb24pCiAJCQkgICAgICAgICAocmVwbGFjZS1yZWdleHAtaW4tc3RyaW5nICJc biIgbGVhZCB2LWkgbmlsIHQpKSkpCiAJCQkgICAgKD9hIHYtYSkKIAkJCSAgICAoP0Egdi1BKQot CQkJICAoP2Mgdi1jKQorCQkJICAgICg/YyAoY3VycmVudC1raWxsLWNhY2hlZCkpCiAJCQkgICAg KD9mIHYtZikKIAkJCSAgICAoP0Ygdi1GKQogCQkJICAgICg/ayB2LWspCkBAIC0xNzEzLDcgKzE3 MTgsMTAgQEAgKGRlZnVuIG9yZy1jYXB0dXJlLWZpbGwtdGVtcGxhdGUgKCZvcHRpb25hbCB0ZW1w bGF0ZSBpbml0aWFsIGFubm90YXRpb24pCiAJCQkgICAgKD9UIHYtVCkKIAkJCSAgICAoP3Ugdi11 KQogCQkJICAgICg/VSB2LVUpCi0JCQkgICg/eCB2LXgpKSkpCisJCQkgICAgKD94IChvciAoeC1j bGlwYm9hcmQtY2FjaGVkICdQUklNQVJZKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKHgtY2xpcGJvYXJkLWNhY2hlZCAnQ0xJUEJPQVJEKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKHgtY2xpcGJvYXJkLWNhY2hlZCAnU0VDT05EQVJZKQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiIpKSkpKQogICAgICAgICAgICAgICAgICAg ICAoaW5zZXJ0CiAJCSAgICAgKGlmIGluc2lkZS1zZXhwPwogICAgICAgICAgICAgICAgICAgICAg ICAgIDs7IEVzY2FwZSBzZW5zaXRpdmUgY2hhcmFjdGVycy4KQEAgLTE3NjksNyArMTc3NywxMyBA QCAoZGVmdW4gb3JnLWNhcHR1cmUtZmlsbC10ZW1wbGF0ZSAoJm9wdGlvbmFsIHRlbXBsYXRlIGlu aXRpYWwgYW5ub3RhdGlvbikKIAkJICAgICAgKChvciAiQyIgIkwiKQogCQkgICAgICAgKGxldCAo KGluc2VydC1mdW4gKGlmIChlcXVhbCBrZXkgIkMiKSAjJ2luc2VydAogCQkJCQkgICAobGFtYmRh IChzKSAob3JnLWluc2VydC1saW5rIDAgcykpKSkpCi0JCSAgICAgICAocGNhc2Ugb3JnLWNhcHR1 cmUtLWNsaXBib2FyZHMKKwkJICAgICAgICAgKHBjYXNlIChzZXRxIG9yZy1jYXB0dXJlLS1jbGlw Ym9hcmRzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWxxIG5pbAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobGlzdCB2LWkKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHgtY2xpcGJv YXJkLWNhY2hlZCAnUFJJTUFSWSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKHgtY2xpcGJvYXJkLWNhY2hlZCAnQ0xJUEJPQVJEKQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoeC1jbGlwYm9hcmQtY2Fj aGVkICdTRUNPTkRBUlkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChjdXJyZW50LWtpbGwtY2FjaGVkKSkpKQogCQkJICAgKGBuaWwgbmlsKQogCQkJ ICAgKGAoLHZhbHVlKSAoZnVuY2FsbCBpbnNlcnQtZnVuIHZhbHVlKSkKIAkJCSAgIChgKCxmaXJz dC12YWx1ZSAuICxfKQpAQCAtMTg2MCw3ICsxODc0LDcgQEAgKGRlZnVuIG9yZy1jYXB0dXJlLWZp bGwtdGVtcGxhdGUgKCZvcHRpb25hbCB0ZW1wbGF0ZSBpbml0aWFsIGFubm90YXRpb24pCiAgICAg ICAgICh1bnRhYmlmeSAocG9pbnQtbWluKSAocG9pbnQtbWF4KSkKICAgICAgICAgKHNldC1idWZm ZXItbW9kaWZpZWQtcCBuaWwpCiAgICAgICAgIChwcm9nMSAoYnVmZmVyLXN1YnN0cmluZy1uby1w cm9wZXJ0aWVzIChwb2ludC1taW4pIChwb2ludC1tYXgpKQotCShraWxsLWJ1ZmZlciAoY3VycmVu dC1idWZmZXIpKSkpKSkKKwkgIChraWxsLWJ1ZmZlciAoY3VycmVudC1idWZmZXIpKSkpKSkpCiAK IChkZWZ1biBvcmctY2FwdHVyZS1lc2NhcGVkLSUgKCkKICAgIk5vbi1uaWwgaWYgJSB3YXMgZXNj YXBlZC4KLS0gCjIuMzcuMC53aW5kb3dzLjEKCg== --00000000000015ef5105e3937de4--