From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id aDi5Ga0xOWVKnAAA9RJhRA:P1 (envelope-from ) for ; Wed, 25 Oct 2023 17:18:05 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id aDi5Ga0xOWVKnAAA9RJhRA (envelope-from ) for ; Wed, 25 Oct 2023 17:18:05 +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 633FD67A9A for ; Wed, 25 Oct 2023 17:18:04 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" 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" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1698247085; 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:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=Moe6nu+AS/UZB52pWgUxu8cTXy5FeGvweKBzmFGMv9Q=; b=mpYF7MhiA+FD2ltImvjMoFN+v/+wVW2iNMNQ7kduU+iCGnr/KG5bMVGGYEjCnaGMh6OIW8 hq0U1tQPB6fEPawjeyuSf19A0mIN98lXrEijT8tFJZvqpvmgetz2ZxJBjDitSNhIun9G0Z P8E643zamxlnMEhgCyX9GKv5tNNjt2YJPbY1FrVJrxHeff+XgHsHWLf/G8n+odbFAXBKN+ yekL51YOSY/ST8PxwNyWfvCxzRfjrVhSBdcWhuWhzC9ats4x6ikuHeamrh3586khavYp51 sR+j3G/lzONxTtDDB9kt5d9SZnEZzv3qij3DfXRFpQl+cy7oLAXruHD86pUujQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1698247085; a=rsa-sha256; cv=none; b=FFLpOnp61sPi6u5vFM9auteOjnXRzXoXRBBrMqK5JXU7BV0zC3au9V1V4IW7K3KSNf6yxL KFZp991vBYLBbffTvV18TGMg/gBFJ10NpOJL+QKnYVPWHtjUB61D66tiFJaXHVxdLPZVQy RqHxtTcYRmmwmWKja97NxYZDZeiqmuiYMVUV8/jfnsUOBe3P+I+pvioZe3T1dCwEXH58sH bHD/lm65rew/z32ZpTQjt+bqgg66IYqghFvsqVz4k5Vh9R9peYBgmuCK54LC8f9PnPosXe Rz2Fx5w1AgRN5MRHLxrYr0sgY5jKUb1GXlGGNbBAcvzKVWILDjwsEMZQpl2nSQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" 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" Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qvfd0-0002pG-LX; Wed, 25 Oct 2023 11:17:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvfcx-0002iQ-3M for emacs-orgmode@gnu.org; Wed, 25 Oct 2023 11:16:59 -0400 Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvfcu-0004KF-Ag for emacs-orgmode@gnu.org; Wed, 25 Oct 2023 11:16:58 -0400 Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1qvfcr-0006np-5H for emacs-orgmode@gnu.org; Wed, 25 Oct 2023 17:16:53 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: emacs-orgmode@gnu.org From: Max Nikulin Subject: [RFC][PATCH v2] Allow to export to ascii custom link types as notes Date: Wed, 25 Oct 2023 22:16:41 +0700 Message-ID: References: <874jijaukf.fsf@localhost> <8734y1aeae.fsf@localhost> <87lebt8rrm.fsf@localhost> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------uBFhu6keUGX3F81BWIP6e8HB" User-Agent: Mozilla Thunderbird Content-Language: en-US, ru-RU In-Reply-To: <87lebt8rrm.fsf@localhost> Received-SPF: pass client-ip=116.202.254.214; envelope-from=geo-emacs-orgmode@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: 28 X-Spam_score: 2.8 X-Spam_bar: ++ X-Spam_report: (2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, FORGED_GMAIL_RCVD=1, FORGED_MUA_MOZILLA=2.309, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, NML_ADSP_CUSTOM_MED=0.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no 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-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Scanner: mx1.migadu.com X-Migadu-Spam-Score: -4.32 X-Migadu-Queue-Id: 633FD67A9A X-Spam-Score: -4.32 X-TUID: XTlm7Ej0yvhR This is a multi-part message in MIME format. --------------uBFhu6keUGX3F81BWIP6e8HB Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 23/10/2023 19:09, Ihor Radchenko wrote: >>>>>> + (if (string-match-p "\\`\u200b*\\[.*\\]\u200b*\\'" anchor) >>>>>> + anchor >>>>>> + (format "[%s]" anchor)) > > I did not mean unrelated to ox-ascii. I meant unrelated to "add new > feature allowing more flexibility for :export property of links when > exporting to ASCII". Since "ox-ascii.el: Consistently add brackets around links" has been committed, this regexp is not necessary to preserve inconsistencies in link formatting. Avoiding duplication of brackets was just a bonus. See next version of the draft. Functions are still not documented. `cons' is made an implementation detail, however completely opaque structure is an obstacle for derived export backend. Perhaps getter functions should be introduced as well. --------------uBFhu6keUGX3F81BWIP6e8HB Content-Type: text/x-patch; charset=UTF-8; name="0001-test-ox-ascii.el-Test-custom-links.patch" Content-Disposition: attachment; filename="0001-test-ox-ascii.el-Test-custom-links.patch" Content-Transfer-Encoding: base64 RnJvbSBmNjg5MWUzMzUyMmMxZWMzMjFkMDFkOGMzOTg2ZmJmNzg5Yzc5MjI0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXggTmlrdWxpbiA8bWFuaWt1bGluQGdtYWlsLmNv bT4KRGF0ZTogRnJpLCAyMCBPY3QgMjAyMyAxNzoxMDozNiArMDcwMApTdWJqZWN0OiBbUEFU Q0ggMS8zXSB0ZXN0LW94LWFzY2lpLmVsOiBUZXN0IGN1c3RvbSBsaW5rcwoKKiB0ZXN0aW5n L2xpc3AvdGVzdC1veC1hc2NpaS5lbCAodGVzdC1veC1hc2NpaS0tcmVzdG9yZS1zeW50YXgp Cih0ZXN0LW94LWFzY2lpLS1saW5rLWV4cG9ydC1pbmxpbmUpOiBIZWxwZXIgZnVuY3Rpb25z LgoodGVzdC1veC1hc2NpaS9saW5rLWN1c3RvbS1wcm90b2NvbC1mYWxsYmFjaykKKHRlc3Qt b3gtYXNjaWkvbGluay1jdXN0b20tcHJvdG9jb2wtc3RyaW5nKTogVGVzdCBleHBvcnQgb2Yg Y3VzdG9tIGxpbmsKdHlwZXMgaGF2aW5nIHRoZSA6ZXhwb3J0IHBhcmFtZXRlcnMgb3IgcmVs eWluZyBvbiBmb3JtYXQgcHJvdmlkZWQgYnkKZGVmYXVsdCB3aGVuIGBvcmctYXNjaWktbGlu a3MtdG8tbm90ZXMnIGVuYWJsZWQgb3IgZGlzYWJsZWQuCi0tLQogdGVzdGluZy9saXNwL3Rl c3Qtb3gtYXNjaWkuZWwgfCA4NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KwogMSBmaWxlIGNoYW5nZWQsIDg0IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS90ZXN0 aW5nL2xpc3AvdGVzdC1veC1hc2NpaS5lbCBiL3Rlc3RpbmcvbGlzcC90ZXN0LW94LWFzY2lp LmVsCmluZGV4IGZlMTJjMGMyNy4uMDdkZWYxNjMzIDEwMDY0NAotLS0gYS90ZXN0aW5nL2xp c3AvdGVzdC1veC1hc2NpaS5lbAorKysgYi90ZXN0aW5nL2xpc3AvdGVzdC1veC1hc2NpaS5l bApAQCAtMjcsNyArMjcsOTEgQEAgKHJlcXVpcmUgJ294LWFzY2lpIG5pbCB0KQogKHVubGVz cyAoZmVhdHVyZXAgJ294LWFzY2lpKQogICAoc2lnbmFsICdtaXNzaW5nLXRlc3QtZGVwZW5k ZW5jeSAib3JnLWV4cG9ydC1hc2NpaSIpKQogCisoZGVmdW4gdGVzdC1veC1hc2NpaS0tcmVz dG9yZS1zeW50YXggKCkKKyAgKG9yZy1saW5rLW1ha2UtcmVnZXhwcykKKyAgKHdoZW4gKGZl YXR1cmVwICdvcmctZWxlbWVudCkgKG9yZy1lbGVtZW50LXVwZGF0ZS1zeW50YXgpKSkKKwor KGRlZnVuIHRlc3Qtb3gtYXNjaWktLWxpbmstZXhwb3J0LWlubGluZSAocGF0aCBkZXNjIGJh Y2tlbmQgaW5mbykKKyAgKGFuZCAob3JnLWV4cG9ydC1kZXJpdmVkLWJhY2tlbmQtcCBiYWNr ZW5kICdhc2NpaSkKKyAgICAgICAobGV0ICgoZGVzY3JpcHRpb24gKGFuZCAob3JnLXN0cmlu Zy1udy1wIGRlc2MpIChvcmctdHJpbSBkZXNjKSkpCisgICAgICAgICAgICAgKHRhcmdldCAo Zm9ybWF0ICIofHRzdHN0cjolc3wpIiBwYXRoKSkpCisgICAgICAgICAoaWYgZGVzY3JpcHRp b24KKyAgICAgICAgICAgICAoZm9ybWF0ICJbfCVzfF0gJXMiIGRlc2NyaXB0aW9uIHRhcmdl dCkKKyAgICAgICAgICAgdGFyZ2V0KSkpKQogDAorKGVydC1kZWZ0ZXN0IHRlc3Qtb3gtYXNj aWkvbGluay1jdXN0b20tcHJvdG9jb2wtZmFsbGJhY2sgKCkKKyAgIlRlc3QgbGluayBjdXN0 b20gcHJvdG9jb2wgZmFsbGJhY2suIgorICAodW53aW5kLXByb3RlY3QKKyAgICAgIChsZXQg KChvcmctbGluay1wYXJhbWV0ZXJzKSkKKyAgICAgICAgKG9yZy1saW5rLXNldC1wYXJhbWV0 ZXJzICJ0c3RkZmx0IikKKyAgICAgICAgOzsgQXMgbm90ZXMuCisgICAgICAgIChsZXQgKChv cmctYXNjaWktbGlua3MtdG8tbm90ZXMgdCkpCisgICAgICAgICAgKHNob3VsZCA7IFdpdGgg ZGVzY3JpcHRpb24uCisgICAgICAgICAgIChzdHJpbmctZXF1YWwKKyAgICAgICAgICAgIChv cmctZXhwb3J0LXN0cmluZy1hcworICAgICAgICAgICAgICJMaW5rIFtbdHN0ZGZsdDpwYXRo LWRlc2NyXVt3aXRoIGRlc2NyaXB0aW9uXV0gYXMgbm90ZS4iCisgICAgICAgICAgICAgJ2Fz Y2lpIHQpCisgICAgICAgICAgICAiTGluayBbd2l0aCBkZXNjcmlwdGlvbl0gYXMgbm90ZS4K K1xuCitbd2l0aCBkZXNjcmlwdGlvbl0gPHRzdGRmbHQ6cGF0aC1kZXNjcj5cbiIpKQorICAg ICAgICAgIChzaG91bGQgOyBObyBkZXNjcmlwdGlvbi4KKyAgICAgICAgICAgKHN0cmluZy1l cXVhbAorICAgICAgICAgICAgKG9yZy1leHBvcnQtc3RyaW5nLWFzCisgICAgICAgICAgICAg IkxpbmsgW1t0c3RkZmx0OnBhdGgtbm8tZGVzY3JdXSB3aXRob3V0IGRlc2NyaXB0aW9uIChu b3RlKS4iCisgICAgICAgICAgICAgJ2FzY2lpIHQpCisgICAgICAgICAgICAiTGluayA8dHN0 ZGZsdDpwYXRoLW5vLWRlc2NyPiB3aXRob3V0IGRlc2NyaXB0aW9uIChub3RlKS5cbiIpKSkK KyAgICAgICAgOzsgSW5saW5lLgorICAgICAgICAobGV0ICgob3JnLWFzY2lpLWxpbmtzLXRv LW5vdGVzIG5pbCkpCisgICAgICAgICAgKHNob3VsZCA7IFdpdGggZGVzY3JpcHRpb24uCisg ICAgICAgICAgIChzdHJpbmctZXF1YWwKKyAgICAgICAgICAgIChvcmctZXhwb3J0LXN0cmlu Zy1hcworICAgICAgICAgICAgICJJbmxpbmUgbGluayBbW3RzdGRmbHQ6cGF0aC1kZXNjcl1b d2l0aCBkZXNjcmlwdGlvbl1dLiIKKyAgICAgICAgICAgICAnYXNjaWkgdCkKKyAgICAgICAg ICAgICJJbmxpbmUgbGluayBbd2l0aCBkZXNjcmlwdGlvbl0gKDx0c3RkZmx0OnBhdGgtZGVz Y3I+KS5cbiIpKQorICAgICAgICAgIChzaG91bGQgOyBObyBkZXNjcmlwdGlvbi4KKyAgICAg ICAgICAgKHN0cmluZy1lcXVhbAorICAgICAgICAgICAgKG9yZy1leHBvcnQtc3RyaW5nLWFz CisgICAgICAgICAgICAgIklubGluZSBsaW5rIFtbdHN0ZGZsdDpwYXRoLW5vLWRlc2NyXV0g d2l0aG91dCBkZXNjcmlwdGlvbi4iCisgICAgICAgICAgICAgJ2FzY2lpIHQpCisgICAgICAg ICAgICAiSW5saW5lIGxpbmsgPHRzdGRmbHQ6cGF0aC1uby1kZXNjcj4gd2l0aG91dCBkZXNj cmlwdGlvbi5cbiIpKSkpCisgICAgKHRlc3Qtb3gtYXNjaWktLXJlc3RvcmUtc3ludGF4KSkp CisKKyhlcnQtZGVmdGVzdCB0ZXN0LW94LWFzY2lpL2xpbmstY3VzdG9tLXByb3RvY29sLXN0 cmluZyAoKQorICAiVGVzdCBsaW5rIGN1c3RvbSBwcm90b2NvbCBmb3JjZWQgaW5saW5lIChz dHJpbmcgcmV0dXJuIHZhbHVlKS4iCisgICh1bndpbmQtcHJvdGVjdAorICAgICAgKGxldCAo KG9yZy1saW5rLXBhcmFtZXRlcnMpKQorICAgICAgICAob3JnLWxpbmstc2V0LXBhcmFtZXRl cnMgInRzdHN0ciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpleHBvcnQg Iyd0ZXN0LW94LWFzY2lpLS1saW5rLWV4cG9ydC1pbmxpbmUpCisgICAgICAgIDs7IElubGlu ZSBkZXNwaXRlIGFzIG5vdGVzIGlzIHJlcXVlc3RlZC4KKyAgICAgICAgKGxldCAoKG9yZy1h c2NpaS1saW5rcy10by1ub3RlcyB0KSkKKyAgICAgICAgICAoc2hvdWxkIDsgV2l0aCBkZXNj cmlwdGlvbi4KKyAgICAgICAgICAgKHN0cmluZy1lcXVhbAorICAgICAgICAgICAgKG9yZy1l eHBvcnQtc3RyaW5nLWFzCisgICAgICAgICAgICAgIkxpbmsgW1t0c3RzdHI6cGF0aC1kZXNj cl1bd2l0aCBkZXNjcmlwdGlvbl1dIGFzIHN0cmluZyAob3B0IG5vdGUpLiIKKyAgICAgICAg ICAgICAnYXNjaWkgdCkKKyAgICAgICAgICAgICJMaW5rIFt8d2l0aCBkZXNjcmlwdGlvbnxd ICh8dHN0c3RyOnBhdGgtZGVzY3J8KSBhcyBzdHJpbmcgKG9wdCBub3RlKS5cbiIpKQorICAg ICAgICAgIChzaG91bGQgOyBObyBkZXNjcmlwdGlvbi4KKyAgICAgICAgICAgKHN0cmluZy1l cXVhbAorICAgICAgICAgICAgKG9yZy1leHBvcnQtc3RyaW5nLWFzCisgICAgICAgICAgICAg IkxpbmsgW1t0c3RzdHI6cGF0aC1uby1kZXNjcl1dIHdpdGhvdXQgZGVzY3JpcHRpb24gYXMg c3RyaW5nIChvcHQgbm90ZSkuIgorICAgICAgICAgICAgICdhc2NpaSB0KQorICAgICAgICAg ICAgIkxpbmsgKHx0c3RzdHI6cGF0aC1uby1kZXNjcnwpIHdpdGhvdXQgZGVzY3JpcHRpb24g YXMgc3RyaW5nIChvcHQgbm90ZSkuXG4iKSkpCisgICAgICAgIDs7IElubGluZS4KKyAgICAg ICAgKGxldCAoKG9yZy1hc2NpaS1saW5rcy10by1ub3RlcyBuaWwpKQorICAgICAgICAgIChz aG91bGQgOyBXaXRoIGRlc2NyaXB0aW9uLgorICAgICAgICAgICAoc3RyaW5nLWVxdWFsCisg ICAgICAgICAgICAob3JnLWV4cG9ydC1zdHJpbmctYXMKKyAgICAgICAgICAgICAiTGluayBb W3RzdHN0cjpwYXRoLWRlc2NyXVt3aXRoIGRlc2NyaXB0aW9uXV0gYXMgc3RyaW5nIChvcHQg aW5saW5lKS4iCisgICAgICAgICAgICAgJ2FzY2lpIHQpCisgICAgICAgICAgICAiTGluayBb fHdpdGggZGVzY3JpcHRpb258XSAofHRzdHN0cjpwYXRoLWRlc2NyfCkgYXMgc3RyaW5nIChv cHQgaW5saW5lKS5cbiIpKQorICAgICAgICAgIChzaG91bGQgOyBObyBkZXNjcmlwdGlvbi4K KyAgICAgICAgICAgKHN0cmluZy1lcXVhbAorICAgICAgICAgICAgKG9yZy1leHBvcnQtc3Ry aW5nLWFzCisgICAgICAgICAgICAgIkxpbmsgPHRzdHN0cjpwYXRoLW5vLWRlc2NyPiB3aXRo b3V0IGRlc2NyaXB0aW9uIGFzIHN0cmluZyAob3B0IGlubGluZSkuIgorICAgICAgICAgICAg ICdhc2NpaSB0KQorICAgICAgICAgICAgIkxpbmsgKHx0c3RzdHI6cGF0aC1uby1kZXNjcnwp IHdpdGhvdXQgZGVzY3JpcHRpb24gYXMgc3RyaW5nIChvcHQKK2lubGluZSkuXG4iKSkpKQor ICAodGVzdC1veC1hc2NpaS0tcmVzdG9yZS1zeW50YXgpKSkKIAogKGVydC1kZWZ0ZXN0IHRl c3Qtb3gtYXNjaWkvbGlzdCAoKQogICAiVGVzdCBsaXN0cy4iCi0tIAoyLjM5LjIKCg== --------------uBFhu6keUGX3F81BWIP6e8HB Content-Type: text/x-patch; charset=UTF-8; name="0002-ox-ascii.el-Refactor-link-export.patch" Content-Disposition: attachment; filename="0002-ox-ascii.el-Refactor-link-export.patch" Content-Transfer-Encoding: base64 RnJvbSBmZDZkNjg2YmI5ZTA5OTgxZDA1Y2JmYzBkZGFiNzRkYzhiY2NlYjk5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXggTmlrdWxpbiA8bWFuaWt1bGluQGdtYWlsLmNv bT4KRGF0ZTogRnJpLCAyMCBPY3QgMjAyMyAxNzoyOTowMyArMDcwMApTdWJqZWN0OiBbUEFU Q0ggMi8zXSBveC1hc2NpaS5lbDogUmVmYWN0b3IgbGluayBleHBvcnQKCiogbGlzcC9veC1h c2NpaS5lbCAob3JnLWFzY2lpLS1kZXNjcmliZS1saW5rcywgb3JnLWFzY2lpLWxpbmspOiBB dm9pZApkdXBsaWNhdGlvbiBvZiBmcmFnbWVudHMgb2YgY29kZS4KKG9yZy1hc2NpaS1saW5r LWlubGluZSk6IEEgbmV3IGhlbHBlciBmdW5jdGlvbiBmb3IgYG9yZy1hc2NpaS1saW5rJy4K ClByZXBhcmUgdG8gZXhwYW5kaW5nIGBvcmctbGluay1wYXJhbWV0ZXJzJyA6ZXhwb3J0IHBy b3RvY29sIHRvIGFsbG93CmV4cG9ydCBvZiBjdXN0b20gbGlua3MgYXMgbm90ZXMgYXQgdGhl IGVuZCBvZiBoZWFkaW5ncy4KLS0tCiBsaXNwL294LWFzY2lpLmVsIHwgNTYgKysrKysrKysr KysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMzEgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGlz cC9veC1hc2NpaS5lbCBiL2xpc3Avb3gtYXNjaWkuZWwKaW5kZXggYWU0MjczNDg5Li4xMGJi MWZjZTcgMTAwNjQ0Ci0tLSBhL2xpc3Avb3gtYXNjaWkuZWwKKysrIGIvbGlzcC9veC1hc2Np aS5lbApAQCAtOTQ2LDExICs5NDYsMTMgQEAgKGRlZnVuIG9yZy1hc2NpaS0tZGVzY3JpYmUt bGlua3MgKGxpbmtzIHdpZHRoIGluZm8pCiAgICAobGFtYmRhIChsaW5rKQogICAgICAobGV0 KiAoKHR5cGUgKG9yZy1lbGVtZW50LXByb3BlcnR5IDp0eXBlIGxpbmspKQogCSAgICAoZGVz Y3JpcHRpb24gKG9yZy1lbGVtZW50LWNvbnRlbnRzIGxpbmspKQorICAgICAgICAgICAgKHJh dy1saW5rIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6cmF3LWxpbmsgbGluaykpCiAJICAgIChh bmNob3IgKG9yZy1leHBvcnQtZGF0YQotCQkgICAgIChvciBkZXNjcmlwdGlvbiAob3JnLWVs ZW1lbnQtcHJvcGVydHkgOnJhdy1saW5rIGxpbmspKQotCQkgICAgIGluZm8pKSkKKwkJICAg ICAob3IgZGVzY3JpcHRpb24gcmF3LWxpbmspCisJCSAgICAgaW5mbykpCisgICAgICAgICAg ICBsb2NhdGlvbikKICAgICAgICAoY29uZAotCSgobWVtYmVyIHR5cGUgJygiY29kZXJlZiIg InJhZGlvIikpIG5pbCkKKwkoKG1lbWJlciB0eXBlICcoImNvZGVyZWYiICJyYWRpbyIpKSkK IAkoKG1lbWJlciB0eXBlICcoImN1c3RvbS1pZCIgImZ1enp5IiAiaWQiKSkKIAkgOzsgT25s eSBsaW5rcyB3aXRoIGEgZGVzY3JpcHRpb24gbmVlZCBhbiBlbnRyeS4gIE90aGVyIGFyZQog CSA7OyBhbHJlYWR5IGhhbmRsZWQgaW4gYG9yZy1hc2NpaS1saW5rJy4KQEAgLTk2MywyNSAr OTY1LDI0IEBAIChkZWZ1biBvcmctYXNjaWktLWRlc2NyaWJlLWxpbmtzIChsaW5rcyB3aWR0 aCBpbmZvKQogCQkJIChjb25kaXRpb24tY2FzZSBuaWwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKG9yZy1leHBvcnQtcmVzb2x2ZS1pZC1saW5rIGxpbmsgaW5mbykKICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChvcmctbGluay1icm9rZW4gbmlsKSkpKSkKLSAgICAg ICAgICAgICAod2hlbiBkZXN0Ci0JICAgICAgIChjb25jYXQKLQkgICAgICAgIChvcmctYXNj aWktLWZpbGwtc3RyaW5nCi0JICAgICAgICAgKGZvcm1hdCAiWyVzXSAlcyIgYW5jaG9yIChv cmctYXNjaWktLWRlc2NyaWJlLWRhdHVtIGRlc3QgaW5mbykpCi0JICAgICAgICAgd2lkdGgg aW5mbykKLQkgICAgICAgICJcblxuIikpKSkpCisgICAgICAgICAgICAgKHNldHEgbG9jYXRp b24KKyAgICAgICAgICAgICAgICAgICAoYW5kIGRlc3QgKG9yZy1hc2NpaS0tZGVzY3JpYmUt ZGF0dW0gZGVzdCBpbmZvKSkpKSkpCiAJOzsgRG8gbm90IGFkZCBhIGxpbmsgdGhhdCBjYW5u b3QgYmUgcmVzb2x2ZWQgYW5kIGRvZXNuJ3QgaGF2ZQogCTs7IGFueSBkZXNjcmlwdGlvbjog ZGVzdGluYXRpb24gaXMgYWxyZWFkeSB2aXNpYmxlIGluIHRoZQogCTs7IHBhcmFncmFwaC4K LQkoKG5vdCAob3JnLWVsZW1lbnQtY29udGVudHMgbGluaykpIG5pbCkKKwkoKG5vdCBkZXNj cmlwdGlvbikpCiAJOzsgRG8gbm90IGFkZCBhIGxpbmsgYWxyZWFkeSBoYW5kbGVkIGJ5IGN1 c3RvbSBleHBvcnQKIAk7OyBmdW5jdGlvbnMuCiAJKChvcmctZXhwb3J0LWN1c3RvbS1wcm90 b2NvbC1tYXliZSBsaW5rIGFuY2hvciAnYXNjaWkgaW5mbykgbmlsKQotCSh0Ci0JIChjb25j YXQKLQkgIChvcmctYXNjaWktLWZpbGwtc3RyaW5nCi0JICAgKGZvcm1hdCAiWyVzXSA8JXM+ IiBhbmNob3IgKG9yZy1lbGVtZW50LXByb3BlcnR5IDpyYXctbGluayBsaW5rKSkKLQkgICB3 aWR0aCBpbmZvKQotCSAgIlxuXG4iKSkpKSkKKwkodCAoc2V0cSBsb2NhdGlvbiAoZm9ybWF0 ICI8JXM+IiByYXctbGluaykpKSkKKyAgICAgICAoYW5kCisgICAgICAgIGxvY2F0aW9uCisg ICAgICAgIGFuY2hvcgorCShjb25jYXQKKwkgKG9yZy1hc2NpaS0tZmlsbC1zdHJpbmcKKwkg IChmb3JtYXQgIlslc10gJXMiIGFuY2hvciBsb2NhdGlvbikKKwkgIHdpZHRoIGluZm8pCisJ ICAiXG5cbiIpKSkpCiAgICBsaW5rcyAiIikpCiAKIChkZWZ1biBvcmctYXNjaWktLWNoZWNr Ym94IChpdGVtIGluZm8pCkBAIC0xNTg0LDYgKzE1ODUsMTUgQEAgKGRlZnVuIG9yZy1hc2Np aS1saW5lLWJyZWFrIChfbGluZS1icmVhayBfY29udGVudHMgX2luZm8pCiAKIDs7OzsgTGlu awogCisoZGVmdW4gb3JnLWFzY2lpLWxpbmstaW5saW5lIChsaW5rIGRlc2MgaW5mbykKKyAg KGNvbmQKKyAgICgobm90IGRlc2MpIGxpbmspCisgICAoKHBsaXN0LWdldCBpbmZvIDphc2Np aS1saW5rcy10by1ub3RlcykKKyAgICAoZm9ybWF0ICJbJXNdIiBkZXNjKSkKKyAgICgoc3Ry aW5nLW1hdGNoLXAgIlxcYCguKilcXCciIGxpbmspCisgICAgKGZvcm1hdCAiWyVzXSAlcyIg ZGVzYyBsaW5rKSkKKyAgICh0IChmb3JtYXQgIlslc10gKCVzKSIgZGVzYyBsaW5rKSkpKQor CiAoZGVmdW4gb3JnLWFzY2lpLWxpbmsgKGxpbmsgZGVzYyBpbmZvKQogICAiVHJhbnNjb2Rl IGEgTElOSyBvYmplY3QgZnJvbSBPcmcgdG8gQVNDSUkuCiAKQEAgLTE2MDUsMTEgKzE2MTUs MTAgQEAgKGRlZnVuIG9yZy1hc2NpaS1saW5rIChsaW5rIGRlc2MgaW5mbykKIAkJCSAgIChv cmctZXhwb3J0LXJlc29sdmUtaWQtbGluayBsaW5rIGluZm8pKSkpCiAJKHBjYXNlIChvcmct ZWxlbWVudC10eXBlIGRlc3RpbmF0aW9uKQogCSAgKChndWFyZCBkZXNjKQotCSAgIChpZiAo cGxpc3QtZ2V0IGluZm8gOmFzY2lpLWxpbmtzLXRvLW5vdGVzKQotCSAgICAgICAoZm9ybWF0 ICJbJXNdIiBkZXNjKQotCSAgICAgKGZvcm1hdCAiWyVzXSAoJXMpIgotICAgICAgICAgICAg ICAgICAgICAgZGVzYwotCQkgICAgIChvcmctYXNjaWktLWRlc2NyaWJlLWRhdHVtIGRlc3Rp bmF0aW9uIGluZm8pKSkpCisgICAgICAgICAgIChvcmctYXNjaWktbGluay1pbmxpbmUKKwkg ICAgKG9yZy1hc2NpaS0tZGVzY3JpYmUtZGF0dW0gZGVzdGluYXRpb24gaW5mbykKKyAgICAg ICAgICAgIGRlc2MKKyAgICAgICAgICAgIGluZm8pKQogCSAgOzsgRXh0ZXJuYWwgZmlsZS4K IAkgIChgcGxhaW4tdGV4dCBkZXN0aW5hdGlvbikKIAkgIChgaGVhZGxpbmUKQEAgLTE2Mjgs MTAgKzE2MzcsNyBAQCAoZGVmdW4gb3JnLWFzY2lpLWxpbmsgKGxpbmsgZGVzYyBpbmZvKQog CSAgKF8gIj8/PyIpKSkpCiAgICAgICh0CiAgICAgICAobGV0ICgocGF0aCAob3JnLWVsZW1l bnQtcHJvcGVydHkgOnJhdy1saW5rIGxpbmspKSkKLQkoaWYgKG5vdCAob3JnLXN0cmluZy1u dy1wIGRlc2MpKSAoZm9ybWF0ICI8JXM+IiBwYXRoKQotCSAgKGNvbmNhdCAoZm9ybWF0ICJb JXNdIiBkZXNjKQotCQkgIChhbmQgKG5vdCAocGxpc3QtZ2V0IGluZm8gOmFzY2lpLWxpbmtz LXRvLW5vdGVzKSkKLQkJICAgICAgIChmb3JtYXQgIiAoPCVzPikiIHBhdGgpKSkpKSkpKSkK KyAgICAgICAgKG9yZy1hc2NpaS1saW5rLWlubGluZSAoZm9ybWF0ICI8JXM+IiBwYXRoKSBk ZXNjIGluZm8pKSkpKSkKIAogCiA7Ozs7IE5vZGUgUHJvcGVydGllcwotLSAKMi4zOS4yCgo= --------------uBFhu6keUGX3F81BWIP6e8HB Content-Type: text/x-patch; charset=UTF-8; name="0003-ox-ascii.el-Allow-to-export-custom-links-as-notes.patch" Content-Disposition: attachment; filename*0="0003-ox-ascii.el-Allow-to-export-custom-links-as-notes.patch" Content-Transfer-Encoding: base64 RnJvbSBkZmRlOTZlNmIzMWRhOGNiOWEyNWM5ODQzNDIzN2RhNGY3ODI3MmY1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXggTmlrdWxpbiA8bWFuaWt1bGluQGdtYWlsLmNv bT4KRGF0ZTogRnJpLCAyMCBPY3QgMjAyMyAyMzozNToxNiArMDcwMApTdWJqZWN0OiBbUEFU Q0ggMy8zXSBveC1hc2NpaS5lbDogQWxsb3cgdG8gZXhwb3J0IGN1c3RvbSBsaW5rcyBhcyBu b3RlcwpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJz ZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAoKKiBsaXNwL294LWFz Y2lpLmVsIChvcmctYXNjaWktbWFrZS1saW5rLWZvcm1hdHRlZCk6IE5ldyBmdW5jdGlvbiB3 aG9zZQp2YWx1ZSBtYXkgYmUgcmV0dXJuZWQgYnkgdGhlIDpleHBvcnQgcHJvcGVydHkgb2Yg YG9yZy1saW5rLXBhcmFtZXRlcnMnCnRvIGNyZWF0ZSBsaW5rcyBvcHRpb25hbGx5IGZvcm1h dHRlZCBzaW1pbGFyIHRvIGZvb3Rub3Rlcy4KKG9yZy1hc2NpaS0tZGVzY3JpYmUtbGlua3Ms IG9yZy1hc2NpaS1saW5rKTogSGFuZGxlIHZhbHVlcyByZXR1cm5lZCBieQpgb3JnLWFzY2lp LW1ha2UtbGluay1mb3JtYXR0ZWQnLiAgSXQgYWxsb3dzIHRvIHJlc3BlY3QKYG9yZy1hc2Np aS1saW5rcy10by1ub3RlcycgZm9yIGN1c3RvbSBsaW5rIHR5cGVzLgoqIHRlc3RpbmcvbGlz cC90ZXN0LW94LWFzY2lpLmVsCih0ZXN0LW94LWFzY2lpL2xpbmstY3VzdG9tLXByb3RvY29s LWNvbnMpOiBOZXcgdGVzdCBmb3IgdGhlIGFkZGVkCmZlYXR1cmUuCiogbGlzcC9vbC1tYW4u ZWwgKG9yZy1tYW4tZXhwb3J0KToKKiBsaXNwL29sLWRvY3ZpZXcuZWwgKG9yZy1kb2N2aWV3 LWV4cG9ydCk6IEFsbG93IHRvIGV4cG9ydCBsaW5rcyB0byBtYW4KcGFnZXMgYW5kIHRvIGRv Y3VtZW50cyBhcyBub3RlcyBhdCB0aGUgZW5kIG9mIGhlYWRpbmcuCgpTZWUgdGhlIGZvbGxv d2luZyBtYWlsaW5nIGxpc3QgdGhyZWFkOgpJaG9yIFJhZGNoZW5rbyB0byBlbWFjcy1vcmdt b2Rl4oCmIFJlOiBFeHBvcnRpbmcgZWxpc3A6IGFuZCBzaGVsbDogbGlua3MuClNhdCwgMTQg T2N0IDIwMjMgMDg6MTM6MzUgKzAwMDAuCmh0dHBzOi8vbGlzdC5vcmdtb2RlLm9yZy84N3dt dnAxdjB3LmZzZkBsb2NhbGhvc3QKLS0tCiBsaXNwL29sLWRvY3ZpZXcuZWwgICAgICAgICAg ICB8ICA2ICsrLQogbGlzcC9vbC1tYW4uZWwgICAgICAgICAgICAgICAgfCAgNiArKy0KIGxp c3Avb3gtYXNjaWkuZWwgICAgICAgICAgICAgIHwgMzQgKysrKysrKysrKysrLS0KIHRlc3Rp bmcvbGlzcC90ZXN0LW94LWFzY2lpLmVsIHwgODMgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgMTIxIGluc2VydGlvbnMoKyksIDggZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9vbC1kb2N2aWV3LmVsIGIvbGlzcC9vbC1k b2N2aWV3LmVsCmluZGV4IGJjYjI2NTIwYi4uZmQ5NDVmZTJlIDEwMDY0NAotLS0gYS9saXNw L29sLWRvY3ZpZXcuZWwKKysrIGIvbGlzcC9vbC1kb2N2aWV3LmVsCkBAIC01MSwxMyArNTEs MTQgQEAgKHJlcXVpcmUgJ29sKQogKGRlY2xhcmUtZnVuY3Rpb24gZG9jLXZpZXctZ290by1w YWdlICJkb2MtdmlldyIgKHBhZ2UpKQogKGRlY2xhcmUtZnVuY3Rpb24gaW1hZ2UtbW9kZS13 aW5kb3ctZ2V0ICJpbWFnZS1tb2RlIiAocHJvcCAmb3B0aW9uYWwgd2lucHJvcHMpKQogKGRl Y2xhcmUtZnVuY3Rpb24gb3JnLW9wZW4tZmlsZSAib3JnIiAocGF0aCAmb3B0aW9uYWwgaW4t ZW1hY3MgbGluZSBzZWFyY2gpKQorKGRlY2xhcmUtZnVuY3Rpb24gb3JnLWFzY2lpLW1ha2Ut bGluay1mb3JtYXR0ZWQgIm94LWFzY2lpIiAocGF0aCBkZXNjIGluZm8pKQogCiAob3JnLWxp bmstc2V0LXBhcmFtZXRlcnMgImRvY3ZpZXciCiAJCQkgOmZvbGxvdyAjJ29yZy1kb2N2aWV3 LW9wZW4KIAkJCSA6ZXhwb3J0ICMnb3JnLWRvY3ZpZXctZXhwb3J0CiAJCQkgOnN0b3JlICMn b3JnLWRvY3ZpZXctc3RvcmUtbGluaykKIAotKGRlZnVuIG9yZy1kb2N2aWV3LWV4cG9ydCAo bGluayBkZXNjcmlwdGlvbiBiYWNrZW5kIF9pbmZvKQorKGRlZnVuIG9yZy1kb2N2aWV3LWV4 cG9ydCAobGluayBkZXNjcmlwdGlvbiBiYWNrZW5kIGluZm8pCiAgICJFeHBvcnQgYSBkb2N2 aWV3IExJTksgd2l0aCBERVNDUklQVElPTiBmb3IgQkFDS0VORC4iCiAgIChsZXQgKChwYXRo IChpZiAoc3RyaW5nLW1hdGNoICJcXCguK1xcKTo6LisiIGxpbmspIChtYXRjaC1zdHJpbmcg MSBsaW5rKQogCQlsaW5rKSkKQEAgLTY3LDcgKzY4LDggQEAgKGRlZnVuIG9yZy1kb2N2aWV3 LWV4cG9ydCAobGluayBkZXNjcmlwdGlvbiBiYWNrZW5kIF9pbmZvKQogICAgICAgKGNvbmQK ICAgICAgICAoKGVxIGJhY2tlbmQgJ2h0bWwpIChmb3JtYXQgIjxhIGhyZWY9XCIlc1wiPiVz PC9hPiIgcGF0aCBkZXNjKSkKICAgICAgICAoKGVxIGJhY2tlbmQgJ2xhdGV4KSAoZm9ybWF0 ICJcXGhyZWZ7JXN9eyVzfSIgcGF0aCBkZXNjKSkKLSAgICAgICAoKGVxIGJhY2tlbmQgJ2Fz Y2lpKSAoZm9ybWF0ICJbJXNdICg8JXM+KSIgZGVzYyBwYXRoKSkKKyAgICAgICAoKGVxIGJh Y2tlbmQgJ2FzY2lpKQorICAgICAgICAob3JnLWFzY2lpLW1ha2UtbGluay1mb3JtYXR0ZWQg KGZvcm1hdCAiKDwlcz4pIiBwYXRoKSBkZXNjIGluZm8pKQogICAgICAgICh0IHBhdGgpKSkp KQogCiAoZGVmdW4gb3JnLWRvY3ZpZXctb3BlbiAobGluayBfKQpkaWZmIC0tZ2l0IGEvbGlz cC9vbC1tYW4uZWwgYi9saXNwL29sLW1hbi5lbAppbmRleCBiMDcwMWM2ODkuLmRhMWNjYTll ZCAxMDA2NDQKLS0tIGEvbGlzcC9vbC1tYW4uZWwKKysrIGIvbGlzcC9vbC1tYW4uZWwKQEAg LTMzLDYgKzMzLDggQEAgKG9yZy1hc3NlcnQtdmVyc2lvbikKIAogKHJlcXVpcmUgJ29sKQog CisoZGVjbGFyZS1mdW5jdGlvbiBvcmctYXNjaWktbWFrZS1saW5rLWZvcm1hdHRlZCAib3gt YXNjaWkiIChwYXRoIGRlc2MgaW5mbykpCisKIChvcmctbGluay1zZXQtcGFyYW1ldGVycyAi bWFuIgogCQkJIDpmb2xsb3cgIydvcmctbWFuLW9wZW4KIAkJCSA6ZXhwb3J0ICMnb3JnLW1h bi1leHBvcnQKQEAgLTg2LDcgKzg4LDcgQEAgKGRlZnVuIG9yZy1tYW4tZ2V0LXBhZ2UtbmFt ZSAoKQogICAgICAgKG1hdGNoLXN0cmluZyAxIChidWZmZXItbmFtZSkpCiAgICAgKGVycm9y ICJDYW5ub3QgY3JlYXRlIGxpbmsgdG8gdGhpcyBtYW4gcGFnZSIpKSkKIAotKGRlZnVuIG9y Zy1tYW4tZXhwb3J0IChsaW5rIGRlc2NyaXB0aW9uIGJhY2tlbmQpCisoZGVmdW4gb3JnLW1h bi1leHBvcnQgKGxpbmsgZGVzY3JpcHRpb24gYmFja2VuZCBpbmZvKQogICAiRXhwb3J0IGEg bWFuIHBhZ2UgTElOSyB3aXRoIERFU0NSSVBUSU9OLgogQkFDS0VORCBpcyB0aGUgY3VycmVu dCBleHBvcnQgYmFja2VuZC4iCiAgIChsZXQgKChwYXRoIChmb3JtYXQgImh0dHA6Ly9tYW4u aGUubmV0Lz90b3BpYz0lcyZzZWN0aW9uPWFsbCIgbGluaykpCkBAIC05NSw3ICs5Nyw3IEBA IChkZWZ1biBvcmctbWFuLWV4cG9ydCAobGluayBkZXNjcmlwdGlvbiBiYWNrZW5kKQogICAg ICAoKGVxIGJhY2tlbmQgJ2h0bWwpIChmb3JtYXQgIjxhIHRhcmdldD1cIl9ibGFua1wiIGhy ZWY9XCIlc1wiPiVzPC9hPiIgcGF0aCBkZXNjKSkKICAgICAgKChlcSBiYWNrZW5kICdsYXRl eCkgKGZvcm1hdCAiXFxocmVmeyVzfXslc30iIHBhdGggZGVzYykpCiAgICAgICgoZXEgYmFj a2VuZCAndGV4aW5mbykgKGZvcm1hdCAiQHVyZWZ7JXMsJXN9IiBwYXRoIGRlc2MpKQotICAg ICAoKGVxIGJhY2tlbmQgJ2FzY2lpKSAoZm9ybWF0ICJbJXNdICg8JXM+KSIgZGVzYyBwYXRo KSkKKyAgICAgKChlcSBiYWNrZW5kICdhc2NpaSkgKG9yZy1hc2NpaS1tYWtlLWxpbmstZm9y bWF0dGVkIChmb3JtYXQgIjwlcz4iIHBhdGgpIGRlc2MgaW5mbykpCiAgICAgICgoZXEgYmFj a2VuZCAnbWQpIChmb3JtYXQgIlslc10oJXMpIiBkZXNjIHBhdGgpKQogICAgICAodCBwYXRo KSkpKQogCmRpZmYgLS1naXQgYS9saXNwL294LWFzY2lpLmVsIGIvbGlzcC9veC1hc2NpaS5l bAppbmRleCAxMGJiMWZjZTcuLjcyMmIyYWE0YyAxMDA2NDQKLS0tIGEvbGlzcC9veC1hc2Np aS5lbAorKysgYi9saXNwL294LWFzY2lpLmVsCkBAIC05NjcsMTMgKzk2NywyNiBAQCAoZGVm dW4gb3JnLWFzY2lpLS1kZXNjcmliZS1saW5rcyAobGlua3Mgd2lkdGggaW5mbykKICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChvcmctbGluay1icm9rZW4gbmlsKSkpKSkKICAgICAg ICAgICAgICAoc2V0cSBsb2NhdGlvbgogICAgICAgICAgICAgICAgICAgIChhbmQgZGVzdCAo b3JnLWFzY2lpLS1kZXNjcmliZS1kYXR1bSBkZXN0IGluZm8pKSkpKSkKKwk7OyBEbyBub3Qg YWRkIGEgbGluayBhbHJlYWR5IGhhbmRsZWQgYnkgY3VzdG9tIGV4cG9ydAorCTs7IGZ1bmN0 aW9ucy4KKwkoKHBjYXNlIChvcmctZXhwb3J0LWN1c3RvbS1wcm90b2NvbC1tYXliZQorICAg ICAgICAgICAgICAgICBsaW5rCisgICAgICAgICAgICAgICAgIChhbmQgZGVzY3JpcHRpb24g KG9yZy1leHBvcnQtZGF0YSBkZXNjcmlwdGlvbiBpbmZvKSkKKyAgICAgICAgICAgICAgICAg J2FzY2lpCisgICAgICAgICAgICAgICAgIGluZm8pCisgICAgICAgICAgICgocHJlZCBudWxs KSkKKyAgICAgICAgICAgKChwcmVkIHN0cmluZ3ApIHQpCisgICAgICAgICAgIChgKCwoYW5k IChvciBgbmlsIChwcmVkIHN0cmluZ3ApKSBwYXRoKSAuCisgICAgICAgICAgICAgICwoYW5k IChvciBgbmlsIChwcmVkIHN0cmluZ3ApKSBkZXNjKSkKKyAgICAgICAgICAgIChzZXRxIGxv Y2F0aW9uIChvcmctc3RyaW5nLW53LXAgcGF0aCkpCisgICAgICAgICAgICAoc2V0cSBhbmNo b3IgZGVzYykKKyAgICAgICAgICAgIHQpCisgICAgICAgICAgIChfIChlcnJvciAiTGluayA6 ZXhwb3J0IHJldHVybmVkIG5vdCBjb25zLCBvciBzdHJpbmcsIG9yIG5pbDogJXMiCisgICAg ICAgICAgICAgICAgICAgICByYXctbGluaykpKSkKIAk7OyBEbyBub3QgYWRkIGEgbGluayB0 aGF0IGNhbm5vdCBiZSByZXNvbHZlZCBhbmQgZG9lc24ndCBoYXZlCiAJOzsgYW55IGRlc2Ny aXB0aW9uOiBkZXN0aW5hdGlvbiBpcyBhbHJlYWR5IHZpc2libGUgaW4gdGhlCiAJOzsgcGFy YWdyYXBoLgogCSgobm90IGRlc2NyaXB0aW9uKSkKLQk7OyBEbyBub3QgYWRkIGEgbGluayBh bHJlYWR5IGhhbmRsZWQgYnkgY3VzdG9tIGV4cG9ydAotCTs7IGZ1bmN0aW9ucy4KLQkoKG9y Zy1leHBvcnQtY3VzdG9tLXByb3RvY29sLW1heWJlIGxpbmsgYW5jaG9yICdhc2NpaSBpbmZv KSBuaWwpCiAJKHQgKHNldHEgbG9jYXRpb24gKGZvcm1hdCAiPCVzPiIgcmF3LWxpbmspKSkp CiAgICAgICAgKGFuZAogICAgICAgICBsb2NhdGlvbgpAQCAtMTYwMSw3ICsxNjE0LDE1IEBA IChkZWZ1biBvcmctYXNjaWktbGluayAobGluayBkZXNjIGluZm8pCiBJTkZPIGlzIGEgcGxp c3QgaG9sZGluZyBjb250ZXh0dWFsIGluZm9ybWF0aW9uLiIKICAgKGxldCAoKHR5cGUgKG9y Zy1lbGVtZW50LXByb3BlcnR5IDp0eXBlIGxpbmspKSkKICAgICAoY29uZAotICAgICAoKG9y Zy1leHBvcnQtY3VzdG9tLXByb3RvY29sLW1heWJlIGxpbmsgZGVzYyAnYXNjaWkgaW5mbykp CisgICAgICgocGNhc2UgKG9yZy1leHBvcnQtY3VzdG9tLXByb3RvY29sLW1heWJlIGxpbmsg ZGVzYyAnYXNjaWkgaW5mbykKKyAgICAgICAgKChwcmVkIG51bGwpIG5pbCkgOyBVc2UgZmFs bGJhY2suCisgICAgICAgICgoYW5kIChwcmVkIHN0cmluZ3ApIHN0cikgc3RyKQorICAgICAg ICAoYChuaWwgLiBuaWwpICIiKQorICAgICAgICAoYCgsKGFuZCAob3IgYG5pbCAocHJlZCBz dHJpbmdwKSkgY3VzdG9tLXBhdGgpIC4KKyAgICAgICAgICAgLChhbmQgKG9yIGBuaWwgKHBy ZWQgc3RyaW5ncCkpIGN1c3RvbS1kZXNjKSkKKyAgICAgICAgIChvcmctYXNjaWktbGluay1p bmxpbmUgY3VzdG9tLXBhdGggY3VzdG9tLWRlc2MgaW5mbykpCisgICAgICAgIChfIChlcnJv ciAiTGluayA6ZXhwb3J0IHJldHVybmVkIG5vdCBjb25zLCBvciBzdHJpbmcsIG9yIG5pbDog JXMiCisgICAgICAgICAgICAgICAgICAob3JnLWVsZW1lbnQtcHJvcGVydHkgOnJhdy1saW5r IGxpbmspKSkpKQogICAgICAoKHN0cmluZz0gdHlwZSAiY29kZXJlZiIpCiAgICAgICAobGV0 ICgocmVmIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6cGF0aCBsaW5rKSkpCiAJKGZvcm1hdCAo b3JnLWV4cG9ydC1nZXQtY29kZXJlZi1mb3JtYXQgcmVmIGRlc2MpCkBAIC0yMjI0LDYgKzIy NDUsMTEgQEAgKGRlZnVuIG9yZy1hc2NpaS1wdWJsaXNoLXRvLXV0ZjggKHBsaXN0IGZpbGVu YW1lIHB1Yi1kaXIpCiAgIChvcmctcHVibGlzaC1vcmctdG8KICAgICdhc2NpaSBmaWxlbmFt ZSAiLnR4dCIgYCg6YXNjaWktY2hhcnNldCB1dGYtOCAsQHBsaXN0KSBwdWItZGlyKSkKIAor KGRlZnVuIG9yZy1hc2NpaS1tYWtlLWxpbmstZm9ybWF0dGVkIChwYXRoIGRlc2NyIF9pbmZv KQorICAiVG8gYmUgdXNlZCBpbiA6ZXhwb3J0IHByb3BlcnR5IG9mIGBvcmctbGluay1wYXJh bWV0ZXJzJy4KK1JldHVybnMgYW4gb3BhcXVlIHR5cGUgaW50ZXJwcmV0ZWQgYnkgYG9yZy1h c2NpaS1saW5rJy4iCisgIChjb25zIHBhdGggZGVzY3IpKQorCiAKIChwcm92aWRlICdveC1h c2NpaSkKIApkaWZmIC0tZ2l0IGEvdGVzdGluZy9saXNwL3Rlc3Qtb3gtYXNjaWkuZWwgYi90 ZXN0aW5nL2xpc3AvdGVzdC1veC1hc2NpaS5lbAppbmRleCAwN2RlZjE2MzMuLjUxNjVlODY3 YyAxMDA2NDQKLS0tIGEvdGVzdGluZy9saXNwL3Rlc3Qtb3gtYXNjaWkuZWwKKysrIGIvdGVz dGluZy9saXNwL3Rlc3Qtb3gtYXNjaWkuZWwKQEAgLTExMyw2ICsxMTMsODkgQEAgKGVydC1k ZWZ0ZXN0IHRlc3Qtb3gtYXNjaWkvbGluay1jdXN0b20tcHJvdG9jb2wtc3RyaW5nICgpCiBp bmxpbmUpLlxuIikpKSkKICAgKHRlc3Qtb3gtYXNjaWktLXJlc3RvcmUtc3ludGF4KSkpCiAK KyhlcnQtZGVmdGVzdCB0ZXN0LW94LWFzY2lpL2xpbmstY3VzdG9tLXByb3RvY29sLWNvbnMg KCkKKyAgIlRlc3Qgb2YgY3VzdG9tIGxpbmsgdHlwZSBvcHRpb25hbGx5IGV4cG9ydGVkIGFz IGEgbm90ZS4iCisgICh1bndpbmQtcHJvdGVjdAorICAgICAgKGxldCAoKG9yZy1saW5rLXBh cmFtZXRlcnMpKQorICAgICAgICAob3JnLWxpbmstc2V0LXBhcmFtZXRlcnMKKyAgICAgICAg ICJ0c3Rjb25zIgorICAgICAgICAgOmV4cG9ydCAobGFtYmRhIChwYXRoIGRlc2NyIF9iYWNr ZW5kIGluZm8pCisgICAgICAgICAgICAgICAgICAgKG9yZy1hc2NpaS1tYWtlLWxpbmstZm9y bWF0dGVkCisgICAgICAgICAgICAgICAgICAgIChjb25jYXQgImV4Y29ucy0iIHBhdGgpIGRl c2NyIGluZm8pKSkKKyAgICAgICAgOzsgQXMgbm90ZXMuCisgICAgICAgIChsZXQgKChvcmct YXNjaWktbGlua3MtdG8tbm90ZXMgdCkpCisgICAgICAgICAgKHNob3VsZCA7IFdpdGggZGVz Y3JpcHRpb24uCisgICAgICAgICAgIChzdHJpbmctZXF1YWwKKyAgICAgICAgICAgIChvcmct ZXhwb3J0LXN0cmluZy1hcworICAgICAgICAgICAgICJMaW5rIFtbdHN0Y29uczpwYXRoLWRl c2NyXVt3aXRoIGRlc2NyW2lwdGlvbl1cdTIwMGJdXSBhcyBub3RlLiIKKyAgICAgICAgICAg ICAnYXNjaWkgdCkKKyAgICAgICAgICAgICJMaW5rIFt3aXRoIGRlc2NyW2lwdGlvbl1cdTIw MGJdIGFzIG5vdGUuCitcbgorW3dpdGggZGVzY3JbaXB0aW9uXVx1MjAwYl0gZXhjb25zLXBh dGgtZGVzY3JcbiIpKQorICAgICAgICAgIChzaG91bGQgOyBObyBkZXNjcmlwdGlvbi4KKyAg ICAgICAgICAgKHN0cmluZy1lcXVhbAorICAgICAgICAgICAgKG9yZy1leHBvcnQtc3RyaW5n LWFzCisgICAgICAgICAgICAgIkxpbmsgPHRzdGNvbnM6cGF0aC1uby1kZXNjcj4gd2l0aG91 dCBkZXNjcmlwdGlvbiAobm90ZSkuIgorICAgICAgICAgICAgICdhc2NpaSB0KQorICAgICAg ICAgICAgIkxpbmsgZXhjb25zLXBhdGgtbm8tZGVzY3Igd2l0aG91dCBkZXNjcmlwdGlvbiAo bm90ZSkuXG4iKSkpCisgICAgICAgIDs7IElubGluZS4KKyAgICAgICAgKGxldCAoKG9yZy1h c2NpaS1saW5rcy10by1ub3RlcyBuaWwpKQorICAgICAgICAgIChzaG91bGQgOyBXaXRoIGRl c2NyaXB0aW9uLgorICAgICAgICAgICAoc3RyaW5nLWVxdWFsCisgICAgICAgICAgICAob3Jn LWV4cG9ydC1zdHJpbmctYXMKKyAgICAgICAgICAgICAiSW5saW5lIGxpbmsgW1t0c3Rjb25z OnBhdGgtZGVzY3JdW3dpdGggZGVzY3JpcHRpb25dXS4iCisgICAgICAgICAgICAgJ2FzY2lp IHQpCisgICAgICAgICAgICAiSW5saW5lIGxpbmsgW3dpdGggZGVzY3JpcHRpb25dIChleGNv bnMtcGF0aC1kZXNjcikuXG4iKSkKKyAgICAgICAgICAoc2hvdWxkIDsgTm8gZGVzY3JpcHRp b24uCisgICAgICAgICAgIChzdHJpbmctZXF1YWwKKyAgICAgICAgICAgIChvcmctZXhwb3J0 LXN0cmluZy1hcworICAgICAgICAgICAgICJJbmxpbmUgbGluayBbW3RzdGNvbnM6cGF0aC1u by1kZXNjcl1dIHdpdGhvdXQgZGVzY3JpcHRpb24uIgorICAgICAgICAgICAgICdhc2NpaSB0 KQorICAgICAgICAgICAgIklubGluZSBsaW5rIGV4Y29ucy1wYXRoLW5vLWRlc2NyIHdpdGhv dXQgZGVzY3JpcHRpb24uXG4iKSkpCisgICAgICAgIDs7IFVnbHkgZm9ybWF0dGluZyB3aXRo IGR1cGxpY2F0ZWQgYnJhY2tldHMuCisgICAgICAgIDs7IEJlaGF2aW9yIGxpa2VseSBzaG91 bGQgYmUgY2hhbmdlZCB0byBub3QgYWRkIGFub3RoZXIgcGFpciBvZiBicmFja2V0cy4KKyAg ICAgICAgKGxldCAoKG9yZy1saW5rLXBhcmFtZXRlcnMpKQorICAgICAgICAgIChvcmctbGlu ay1zZXQtcGFyYW1ldGVycworICAgICAgICAgICAiYnJjb25zIgorICAgICAgICAgICA6ZXhw b3J0IChsYW1iZGEgKHBhdGggZGVzY3IgX2JhY2tlbmQgaW5mbykKKyAgICAgICAgICAgICAg ICAgICAgIChvcmctYXNjaWktbWFrZS1saW5rLWZvcm1hdHRlZAorICAgICAgICAgICAgICAg ICAgICAgIChmb3JtYXQgIihleGJyLSVzKSIgcGF0aCkKKyAgICAgICAgICAgICAgICAgICAg ICAoYW5kIGRlc2NyIChmb3JtYXQgIlslc10iIGRlc2NyKSkKKyAgICAgICAgICAgICAgICAg ICAgICBpbmZvKSkpCisgICAgICAgICAgKGxldCAoKG9yZy1hc2NpaS1saW5rcy10by1ub3Rl cyB0KSkKKyAgICAgICAgICAgIChzaG91bGQKKyAgICAgICAgICAgICAoc3RyaW5nLWVxdWFs CisgICAgICAgICAgICAgIChvcmctZXhwb3J0LXN0cmluZy1hcworICAgICAgICAgICAgICAg IkxpbmsgW1ticmNvbnM6cGF0aC1kZXNjcl1bd2l0aCBicmFja2V0c11dIGFzIG5vdGUuIgor ICAgICAgICAgICAgICAgJ2FzY2lpIHQpCisgICAgICAgICAgICAgICJMaW5rIFtbd2l0aCBi cmFja2V0c11dIGFzIG5vdGUuCitcbgorW1t3aXRoIGJyYWNrZXRzXV0gKGV4YnItcGF0aC1k ZXNjcilcbiIpKSkKKyAgICAgICAgICA7OyBJbmxpbmUuCisgICAgICAgICAgKGxldCAoKG9y Zy1hc2NpaS1saW5rcy10by1ub3RlcyBuaWwpKQorICAgICAgICAgICAgKHNob3VsZAorICAg ICAgICAgICAgIChzdHJpbmctZXF1YWwKKyAgICAgICAgICAgICAgKG9yZy1leHBvcnQtc3Ry aW5nLWFzCisgICAgICAgICAgICAgICAiTGluayBbW2JyY29uczpwYXRoLWRlc2NyXVt3aXRo IGJyYWNrZXRzXV0gaW5saW5lLiIKKyAgICAgICAgICAgICAgICdhc2NpaSB0KQorICAgICAg ICAgICAgICAiTGluayBbW3dpdGggYnJhY2tldHNdXSAoZXhici1wYXRoLWRlc2NyKSBpbmxp bmUuXG4iKSkpKQorICAgICAgICA7OyBFcnJvci4KKyAgICAgICAgKG9yZy1saW5rLXNldC1w YXJhbWV0ZXJzCisgICAgICAgICAidHN0ZXJyIgorICAgICAgICAgOmV4cG9ydCAobGFtYmRh IChwYXRoIGRlc2NyIF9iYWNrZW5kIF9pbmZvKQorICAgICAgICAgICAgICAgICAgIChsaXN0 IChjb25jYXQgImV4LWVycm9yISAiIHBhdGgpIGRlc2NyICJleHRyYSBhcmciKSkpCisgICAg ICAgIChsZXQqICgoZXJyIChzaG91bGQtZXJyb3IKKyAgICAgICAgICAgICAgICAgICAgIChv cmctZXhwb3J0LXN0cmluZy1hcworICAgICAgICAgICAgICAgICAgICAgICJTaWduYWxzIFtb dHN0ZXJyOmludmFsaWQgOmV4cG9ydF1bYWFhXV0gZXJyb3IuIgorICAgICAgICAgICAgICAg ICAgICAgICdhc2NpaSB0KQorICAgICAgICAgICAgICAgICAgICAgOnR5cGUgJ2Vycm9yKSkK KyAgICAgICAgICAgICAgIChlcnItdGV4dCAoY2FkciBlcnIpKSkKKyAgICAgICAgICAoc2hv dWxkLW5vdCAodW5sZXNzIChhbmQgKHN0cmluZ3AgZXJyLXRleHQpCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmctbWF0Y2gtcCAiXFxgTGluayA6ZXhwb3J0 IHJldHVybmVkIG5vdC4qIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZXJyLXRleHQpKQorICAgICAgICAgICAgICAgICAgICAgICAgZXJy KSkpKQorICAodGVzdC1veC1hc2NpaS0tcmVzdG9yZS1zeW50YXgpKSkKKwogKGVydC1kZWZ0 ZXN0IHRlc3Qtb3gtYXNjaWkvbGlzdCAoKQogICAiVGVzdCBsaXN0cy4iCiAgIDs7IE51bWJl ciBjb3VudGVyLgotLSAKMi4zOS4yCgo= --------------uBFhu6keUGX3F81BWIP6e8HB--