From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id WO4NMz73a2KpBwEAbAwnHQ (envelope-from ) for ; Fri, 29 Apr 2022 16:33:34 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id EC3HMj73a2I7sAAAauVa8A (envelope-from ) for ; Fri, 29 Apr 2022 16:33:34 +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 21EF5E5BF for ; Fri, 29 Apr 2022 16:33:34 +0200 (CEST) Received: from localhost ([::1]:59542 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nkRgb-0006OS-80 for larch@yhetil.org; Fri, 29 Apr 2022 10:33:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60178) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkRaX-0006pH-SU for emacs-orgmode@gnu.org; Fri, 29 Apr 2022 10:27:18 -0400 Received: from mout02.posteo.de ([185.67.36.66]:51069) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkRaU-0005zz-MH for emacs-orgmode@gnu.org; Fri, 29 Apr 2022 10:27:17 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id CB04E240108 for ; Fri, 29 Apr 2022 16:27:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.eu; s=2017; t=1651242430; bh=c7ZmHbaFaVqM0NGaWwO6tx3m/hJGBrEcjt6VxiQ/tIY=; h=Date:Subject:To:Cc:From:From; b=aLg0wMDEZsd5TKE9B21JE5zbiGHUg9rga4GU7+dHaiznPZDfBNcuDwpcscI1fwDw1 v5XMP79ekgwsMDAB6hm3wyoCQ6I9fsdMSYSoCLtaRmj1mOfmC0x40FCfk1vGhwyKoY oAvwpLrhJE8aJAMvKVntipvZ38nvRosMHn3mJVvJv90Cr4fFDtcUmfDFwpigje3sSD Fu734Fvl/m3QrogeaCgckEohXn67xU+umn20YPdxixWsN80CVaxqPEkDLxXpo7NNtB LRrb5CUfiFH9Ik3Q5JOeFoCHpMyjHcWZA87fnWDt4I9NZQSjZDQyMH8df1ex1N8LgM Z2I58WMOPTbvQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4KqZZ5701Dz9rxF; Fri, 29 Apr 2022 16:27:09 +0200 (CEST) Content-Type: multipart/mixed; boundary="------------0yEBsP0NUC3gAM0mKNd8ZR0h" Message-ID: Date: Fri, 29 Apr 2022 14:27:09 +0000 MIME-Version: 1.0 Subject: Re: [PATCH] Add :noweb-prefix and :noweb-trans babel header arguments Content-Language: fr To: Ihor Radchenko References: <2dd9630a-c584-0702-62aa-393ad56c621e@posteo.eu> <875ymt8goc.fsf@localhost> From: =?UTF-8?Q?S=c3=a9bastien_Miquel?= In-Reply-To: <875ymt8goc.fsf@localhost> Received-SPF: pass client-ip=185.67.36.66; envelope-from=sebastien.miquel@posteo.eu; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, 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: , Reply-To: sebastien.miquel@posteo.eu Cc: emacs-orgmode 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=1651242814; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc: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:dkim-signature; bh=/Gmaa0/K4URC2klJAtreQcnMspnynvuIwq9VLUu2s+w=; b=LCIBTuwjfgfge8tqDW04id+VUG0S0FZU1YnBb3X9KLGlfa/6FCIfmxyjKYrOVNQgNDGAY7 mlk9NGqOzCeSBBh5shTGwfcpdK2wnQa4ns1JMVOEuC5Fq7LH0VmG5BAEBovdBMlbhptn/w negXSRxvFNNxsUbypZkPjv1F68EuxUmkzLDxhawAFlijH0RsYg8F8yx3YRPrZkZ2cGqPzs wmWi5Cei/01Ev7KWeEoUJa1wyCU6uwIhxpCNtjTDtXUqZPMaeWOPIYsS4LQPLjnkDHHRyb 3K825OKfD/TAYzv+L3e3Bu6Mxw8GCx1z5CxPUNJQSX+4Hk8/YlI3PvoS7N0gEg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1651242814; a=rsa-sha256; cv=none; b=fFCcsHHZpbZYvIp5YPi1cWA5lGfUP2FwPpCPb9JN63hvamuzXqVfvU1SeRuOG3ysOFybyr 0pFkifGh8Re3lmSH9xZ9QgbDO1qsZFNoemQFByqmE6Sb0SonTIynq2wNHjgzHOmpelkclC kfh9RYquyUUiZyNsd9L76sezS51qGOQEnWf+EEbr6H9h9r0K+2M9N1VkSfj7nVUcTU1+0+ 8PD6Y7vkLujonNgP/1EFCN/Qmf8Jl9ShRXffV8fGnKhJRYGlFRju4rASqECIiv3f6aENNP xClDw/eSiGgS3M1pwq2Utakp+vB0SJE2kYBJFkWn618btQ2VXStBl/e86bvi1Q== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=posteo.eu header.s=2017 header.b=aLg0wMDE; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.eu (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.00 Authentication-Results: aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=posteo.eu header.s=2017 header.b=aLg0wMDE; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.eu (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: 21EF5E5BF X-Spam-Score: 6.00 X-Migadu-Scanner: scn0.migadu.com X-TUID: a7r2/EG/Q1CQ This is a multi-part message in MIME format. --------------0yEBsP0NUC3gAM0mKNd8ZR0h Content-Type: multipart/alternative; boundary="------------OzUzXnQyPaRlPYe5AWNe5HI9" --------------OzUzXnQyPaRlPYe5AWNe5HI9 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, Ihor Radchenko writes: > prin1-to-string is too specific and only solves a single use-case. prin1-to-string is actually universal in a way, since any other manipulation can then be achieved with : (setq var (do-something <>)) at least as long as you're tangling to a programming language, that can read lisp strings. > Consider the following example: > > #+BEGIN_SRC emacs-lisp :noweb yes :tangle yes :noweb-prefix no :noweb-trans prin1-to-string > <> > (setq latex-header <>) > #+END_SRC > > There are two noweb references here. Setting source block-wide > :noweb-trans is not helpful because the first reference will be > incorrectly filtered through prin1-to-string. Indeed. Originally I had thought of adding a new syntax <<"nw">> to insert a string representation. I've attached a new patch, that does this instead of introducing :noweb-trans. Now that I think of the universality of prin1-to-string, I actually like it slightly better than :noweb-trans. It would break existing "nw"-like noweb references. Of course, one can work around this easily enough by using two blocks. > I'd rather introduce a new syntax to transform the noweb reference > inline. Something like > > #+BEGIN_SRC emacs-lisp :noweb yes :tangle yes :noweb-prefix no > <> > (setq latex-header <<(prin1-to-string nw)>>) > #+END_SRC You'd need to only allow a single function call with only one argument, or use something like <<(prin1-to-string <>)>>. The change would be much more complex than what I propose, for maybe little benefit. >> [...] > This sounds a bit confusing. I would also add an example where it is > useful to set :noweb-prefix to no. I've added such an example in the revised patch attached. Thanks for the feedback. Regards, -- Sébastien Miquel --------------OzUzXnQyPaRlPYe5AWNe5HI9 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit
Hi,

Ihor Radchenko writes:
prin1-to-string is too specific and only solves a single use-case.
prin1-to-string is actually universal in a way, since any other
manipulation can then be achieved with

: (setq var (do-something <<nw>>))

at least as long as you're tangling to a programming language, that
can read lisp strings.
Consider the following example:

#+BEGIN_SRC emacs-lisp :noweb yes :tangle yes :noweb-prefix no :noweb-trans prin1-to-string
<<preamble>>
(setq latex-header <<nw>>)
#+END_SRC

There are two noweb references here. Setting source block-wide
:noweb-trans is not helpful because the first reference will be
incorrectly filtered through prin1-to-string.
Indeed. Originally I had thought of adding a new syntax <<"nw">> to
insert a string representation. I've attached a new patch, that does
this instead of introducing :noweb-trans. Now that I think of the
universality of prin1-to-string, I actually like it slightly better
than :noweb-trans. It would break existing "nw"-like noweb references.


Of course, one can work around this easily enough by using two blocks.
I'd rather introduce a new syntax to transform the noweb reference
inline. Something like

#+BEGIN_SRC emacs-lisp :noweb yes :tangle yes :noweb-prefix no
<<preamble>>
(setq latex-header <<(prin1-to-string nw)>>)
#+END_SRC
You'd need to only allow a single function call with only one
argument, or use something like <<(prin1-to-string <<nw>>)>>. The
change would be much more complex than what I propose, for maybe
little benefit.
[...]
This sounds a bit confusing. I would also add an example where it is
useful to set :noweb-prefix to no.

I've added such an example in the revised patch attached.

Thanks for the feedback.

Regards,

-- 
Sébastien Miquel
--------------OzUzXnQyPaRlPYe5AWNe5HI9-- --------------0yEBsP0NUC3gAM0mKNd8ZR0h Content-Type: text/x-patch; charset=UTF-8; name="0001-ob-core.el-Add-noweb-prefix-noweb-trans-babel-header.patch" Content-Disposition: attachment; filename*0="0001-ob-core.el-Add-noweb-prefix-noweb-trans-babel-header.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA5OWQwNDNiOWQ4MzdhMjY1OGU2MGZiNGI0OTEzNDU0ZDk1NjY1MTliIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Uz1DMz1BOWJhc3RpZW49MjBNaXF1 ZWw/PSA8c2ViYXN0aWVuLm1pcXVlbEBwb3N0ZW8uZXU+CkRhdGU6IE1vbiwgNiBTZXAgMjAy MSAxODo0NTo0MiArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIG9iLWNvcmUuZWw6IEFkZCBgOm5v d2ViLXByZWZpeGAsIGA6bm93ZWItdHJhbnNgIGJhYmVsIGhlYWRlcgogYXJndW1lbnRzCgoq IGxpc3Avb2ItY29yZS5lbCAob3JnLWJhYmVsLWV4cGFuZC1ub3dlYi1yZWZlcmVuY2VzKTog QWRkIHN1cHBvcnQgZm9yCmBub3dlYi1wcmVmaXgnIGhlYWRlciBhcmd1bWVudCwgdG8gbm90 IHJlcGVhdCB0aGUgcHJlZml4IGNoYXJhY3RlcnMKd2hlbiBleHBhbmRpbmcgYSBub3dlYiBy ZWZlcmVuY2UuIEFkZCBzdXBwb3J0IGZvciBgbm93ZWItdHJhbnMnIGhlYWRlcgphcmd1bWVu dCwgdG8gYXBwbHkgYSBmdW5jdGlvbiB0byB0aGUgbm93ZWIgY29udGVudCB1cG9uCmV4cGFu c2lvbi4KKG9yZy1iYWJlbC1jb21tb24taGVhZGVyLWFyZ3Mtdy12YWx1ZXMpOgoob3JnLWJh YmVsLXNhZmUtaGVhZGVyLWFyZ3MpOiBBZGQgYG5vd2ViLXByZWZpeCcgYW5kIGBub3dlYi10 cmFucycgdmFsdWVzLgoqIGRvYy9vcmctbWFudWFsLm9yZzogRG9jdW1lbnQgYG5vd2ViLXBy ZWZpeCcgYW5kIGBub3dlYi10cmFucycgYmFiZWwgaGVhZGVyCmFyZ3VtZW50cy4KKiBldGMv T1JHLU5FV1M6IERvY3VtZW50IGA6bm93ZWItcHJlZml4JyBhbmQgYDpub3dlYi10cmFucycu Ci0tLQogZG9jL29yZy1tYW51YWwub3JnIHwgNDIgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrCiBldGMvT1JHLU5FV1MgICAgICAgfCAxMCArKysrKysrKyst CiBsaXNwL29iLWNvcmUuZWwgICAgfCAyNiArKysrKysrKysrKysrKysrKysrKy0tLS0tLQog MyBmaWxlcyBjaGFuZ2VkLCA3MSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2RvYy9vcmctbWFudWFsLm9yZyBiL2RvYy9vcmctbWFudWFsLm9yZwppbmRl eCA2NzY4Y2E5OGQuLjVlZjhlMmY4YiAxMDA2NDQKLS0tIGEvZG9jL29yZy1tYW51YWwub3Jn CisrKyBiL2RvYy9vcmctbWFudWFsLm9yZwpAQCAtMTg3NjAsNiArMTg3NjAsNDggQEAgZWxz ZToKICAgICBwcmludCgnZG8gdGhpbmdzIHdoZW4gZmFsc2UnKQogIytlbmRfZXhhbXBsZQog CitUaGlzIHByZWZpeCBiZWhhdmlvciBjYW4gYmUgdHVybmVkIG9mZiBpbiBhIGJsb2NrIGJ5 IHNldHRpbmcgdGhlCis9bm93ZWItcHJlZml4PSBoZWFkZXIgYXJndW1lbnQgdG8gPW5vPSwg YXMgaW46CisKKyMrYmVnaW5fZXhhbXBsZQorLCMrQkVHSU5fU1JDIGVsaXNwIDpub3dlYi1w cmVmaXggbm8KKyAgKHNldHEgZXhhbXBsZS1kYXRhICI8PGV4YW1wbGU+PiIpCissIytFTkRf U1JDCisjK2VuZF9leGFtcGxlCisKKyMrdGV4aW5mbzogQG5vaW5kZW50Cit3aGljaCBleHBh bmRzIHRvOgorCisjK2JlZ2luX2V4YW1wbGUKKyhzZXRxIGV4YW1wbGUtZGF0YSAidGhpcyBp cyB0aGUKK211bHRpLWxpbmUgYm9keSBvZiBleGFtcGxlIikKKyMrZW5kX2V4YW1wbGUKKwor VGhlIGhlYWRlciBhcmd1bWVudCA9bm93ZWItdHJhbnM9IGNhbiBiZSBzZXQgdG8gPXByaW4x LXRvLXN0cmluZz0gdG8KK2luc2VydCBhIGxpc3Agc3RyaW5nIHJlcHJlc2VudGluZyB0aGUg Y29udGVudCBvZiB0aGUgcmVmZXJlbmNlZCBzcmMKK2Jsb2NrLiBXaXRoOgorCisjK2JlZ2lu X2V4YW1wbGUKKywjK05BTUU6IGxhdGV4LWhlYWRlcgorLCMrQkVHSU5fU1JDIGxhdGV4Cisg IFx1c2VwYWNrYWdle2Ftc21hdGh9CissIytFTkRfU1JDCisjK2VuZF9leGFtcGxlCisKKyMr dGV4aW5mbzogQG5vaW5kZW50Cit0aGlzIGNvZGUgYmxvY2s6CisKKyMrYmVnaW5fZXhhbXBs ZQorLCMrQkVHSU5fU1JDIGVsaXNwIDpub3dlYiB5ZXMgOm5vd2ViLXRyYW5zIHByaW4xLXRv LXN0cmluZworICAoc2V0cSBoZWFkZXIgPDxsYXRleC1oZWFkZXI+PikKKywjK0VORF9TUkMK KyMrZW5kX2V4YW1wbGUKKworIyt0ZXhpbmZvOiBAbm9pbmRlbnQKK2V4cGFuZHMgdG86CisK KzogKHNldHEgaGVhZGVyICJcXHVzZXBhY2thZ2V7YW1zbWF0aH0iKQorCiBXaGVuIGluIGRv dWJ0IGFib3V0IHRoZSBvdXRjb21lIG9mIGEgc291cmNlIGNvZGUgYmxvY2sgZXhwYW5zaW9u LCB5b3UKIGNhbiBwcmV2aWV3IHRoZSByZXN1bHRzIHdpdGggdGhlIGZvbGxvd2luZyBjb21t YW5kOgogCmRpZmYgLS1naXQgYS9ldGMvT1JHLU5FV1MgYi9ldGMvT1JHLU5FV1MKaW5kZXgg MmI1MzlkMzA1Li43MGY3NjA2ZGIgMTAwNjQ0Ci0tLSBhL2V0Yy9PUkctTkVXUworKysgYi9l dGMvT1JHLU5FV1MKQEAgLTE1MCw3ICsxNTAsNyBAQCBUaGUgZW50cnkgcG9pbnRzIGFyZSB+ b3JnLXBlcnNpc3QtcmVnaXN0ZXJ+LCB+b3JnLXBlcnNpc3QtdW5yZWdpc3Rlcn4sCiB+b3Jn LXBlcnNpc3QtcmVhZH4sIGFuZCB+b3JnLXBlcnNpc3QtcmVhZC1hbGx+LiAgU3RvcmluZyBj aXJjdWxhcgogc3RydWN0dXJlcyBpcyBzdXBwb3J0ZWQuICBTdG9yaW5nIHJlZmVyZW5jZXMg YmV0d2VlbiBkaWZmZXJlbnQKIHZhcmlhYmxlcyBpcyBhbHNvIHN1cHBvcnRlZCAoc2VlID06 aW5oZXJpdD0ga2V5IGluCi1+b3JnLXBlcnNpc3QtcmVnaXN0ZXJ+KS4gIAorfm9yZy1wZXJz aXN0LXJlZ2lzdGVyfikuCiAKIFRoZSBsaWJyYXJ5IHBlcm1pdHMgc3RvcmluZyBidWZmZXIt bG9jYWwgdmFyaWFibGVzLiAgU3VjaCB2YXJpYWJsZXMKIGFyZSBsaW5rZWQgdG8gdGhlIGJ1 ZmZlciB0ZXh0LCBmaWxlID1pbm9kZT0sIGFuZCBmaWxlIHBhdGguCkBAIC0xNzUsNiArMTc1 LDE0IEBAIHRoZSA9Y29tcGFjdC1pdGVteD0gZXhwb3J0IG9wdGlvbiwgb3IgZ2xvYmFsbHkg dXNpbmcgdGhlCiBJdGVtcyBpbiBhIGRlc2NyaXB0aW9uIGxpc3QgdGhhdCBiZWdpbiB3aXRo ID1GdW5jdGlvbjo9LCA9VmFyaWFibGU6PQogb3IgY2VydGFpbiByZWxhdGVkIHByZWZpeGVz IGFyZSBjb252ZXJ0ZWQgdXNpbmcgVGV4aW5mbyBkZWZpbml0aW9uCiBjb21tYW5kcy4KKyoq KiBOZXcgPTpub3dlYi1wcmVmaXg9IGFuZCA9Om5vd2ViLXRyYW5zPSBiYWJlbCBoZWFkZXIg YXJndW1lbnRzCisKKz06bm93ZWItcHJlZml4PSBjYW4gYmUgc2V0IHRvID1ubz0gdG8gcHJl dmVudCB0aGUgcHJlZml4IGNoYXJhY3RlcnMKK2Zyb20gYmVpbmcgcmVwZWF0ZWQgd2hlbiBl eHBhbmRpbmcgYSBtdWx0aWxpbmUgbm93ZWIgcmVmZXJlbmNlLgorCis9Om5vd2ViLXRyYW5z PSBjYW4gYmUgc2V0IHRvID1wcmluMS10by1zdHJpbmc9LiBOb3dlYiByZWZlcmVuY2UKK3Ro ZXJlaW4gd2lsbCBiZSBleHBhbmRlZCB0byBhbiBlbGlzcCBzdHJpbmcgcmVwcmVzZW50YXRp b24gb2YgdGhlaXIKK2NvbnRlbnQuCiAKICoqIE5ldyBmdW5jdGlvbnMgYW5kIGNoYW5nZXMg aW4gZnVuY3Rpb24gYXJndW1lbnRzCiAKZGlmZiAtLWdpdCBhL2xpc3Avb2ItY29yZS5lbCBi L2xpc3Avb2ItY29yZS5lbAppbmRleCA2NTkwZWVlZTcuLmI1ZmI2ODY2MSAxMDA2NDQKLS0t IGEvbGlzcC9vYi1jb3JlLmVsCisrKyBiL2xpc3Avb2ItY29yZS5lbApAQCAtNDEzLDYgKzQx Myw4IEBAIHRoZW4gcnVuIGBvcmctYmFiZWwtc3dpdGNoLXRvLXNlc3Npb24nLiIKICAgICAo bm93ZWIJLiAoKHllcyBubyB0YW5nbGUgbm8tZXhwb3J0IHN0cmlwLWV4cG9ydCkpKQogICAg IChub3dlYi1yZWYJLiA6YW55KQogICAgIChub3dlYi1zZXAgIC4gOmFueSkKKyAgICAobm93 ZWItcHJlZml4IC4gKChubyB5ZXMpKSkKKyAgICAobm93ZWItdHJhbnMgIC4gKChwcmluMS10 by1zdHJpbmcpKSkKICAgICAob3V0cHV0LWRpciAuIDphbnkpCiAgICAgKHBhZGxpbmUJLiAo KHllcyBubykpKQogICAgIChwb3N0ICAgICAgIC4gOmFueSkKQEAgLTQzOCw5ICs0NDAsMTAg QEAgc3BlY2lmaWMgaGVhZGVyIGFyZ3VtZW50cyBhcyB3ZWxsLiIpCiAKIChkZWZjb25zdCBv cmctYmFiZWwtc2FmZS1oZWFkZXItYXJncwogICAnKDpjYWNoZSA6Y29sbmFtZXMgOmNvbW1l bnRzIDpleHBvcnRzIDplcGlsb2d1ZSA6aGxpbmVzIDpub2V2YWwKLQkgICA6bm93ZWIgOm5v d2ViLXJlZiA6bm93ZWItc2VwIDpwYWRsaW5lIDpwcm9sb2d1ZSA6cm93bmFtZXMKLQkgICA6 c2VwIDpzZXNzaW9uIDp0YW5nbGUgOndyYXAKKwkgICA6bm93ZWIgOm5vd2ViLXJlZiA6bm93 ZWItc2VwIDpub3dlYi1wcmVmaXggOnBhZGxpbmUKKyAgICAgICAgICAgOnByb2xvZ3VlIDpy b3duYW1lcyA6c2VwIDpzZXNzaW9uIDp0YW5nbGUgOndyYXAKIAkgICAoOmV2YWwgLiAoIm5l dmVyIiAicXVlcnkiKSkKKyAgICAgICAgICAgKDpub3dlYi10cmFucyAuICgicHJpbjEtdG8t c3RyaW5nIikpCiAJICAgKDpyZXN1bHRzIC4gKGxhbWJkYSAoc3RyKSAobm90IChzdHJpbmct bWF0Y2ggImZpbGUiIHN0cikpKSkpCiAgICJBIGxpc3Qgb2Ygc2FmZSBoZWFkZXIgYXJndW1l bnRzIGZvciBiYWJlbCBzb3VyY2UgYmxvY2tzLgogCkBAIC0yODI3LDYgKzI4MzAsMTIgQEAg YmxvY2sgYnV0IGFyZSBwYXNzZWQgbGl0ZXJhbGx5IHRvIHRoZSBcImV4YW1wbGUtYmxvY2tc Ii4iCiAgICAgICAgICAobGFuZyAobnRoIDAgaW5mbykpCiAgICAgICAgICAoYm9keSAobnRo IDEgaW5mbykpCiAJIChjb21tZW50IChzdHJpbmc9ICJub3dlYiIgKGNkciAoYXNzcSA6Y29t bWVudHMgKG50aCAyIGluZm8pKSkpKQorCSAobm93ZWItdHJhbnMgKHdoZW4gKGNkciAoYXNz cSA6bm93ZWItdHJhbnMgKG50aCAyIGluZm8pKSkKKyAgICAgICAgICAgICAgICAgICAgICAg IChpbnRlcm4gKGNkciAoYXNzcSA6bm93ZWItdHJhbnMgKG50aCAyIGluZm8pKSkpKSkKKyAg ICAgICAgIChub3dlYi1wcmVmaXggKGxldCAoKHYgKGFzc3EgOm5vd2ViLXByZWZpeCAobnRo IDIgaW5mbykpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAob3IgKG5vdCB2KQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoYW5kIChvcmctbm90LW5pbCAoY2RyIHYpKQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChub3QgKGVxdWFsIChjZHIgdikg Im5vIikpKSkpKQogCSAobm93ZWItcmUgKGZvcm1hdCAiXFwoLio/XFwpXFwoJXNcXCkiCiAJ CQkgICAod2l0aC1jdXJyZW50LWJ1ZmZlciBwYXJlbnQtYnVmZmVyCiAJCQkgICAgIChvcmct YmFiZWwtbm93ZWItd3JhcCkpKSkKQEAgLTI5MjEsMTEgKzI5MzAsMTYgQEAgYmxvY2sgYnV0 IGFyZSBwYXNzZWQgbGl0ZXJhbGx5IHRvIHRoZSBcImV4YW1wbGUtYmxvY2tcIi4iCiAJCQkg IChsZXQqICgoaW5mbyAob3JnLWJhYmVsLWdldC1zcmMtYmxvY2staW5mbyB0KSkKIAkJCQkg KHJlZiAoY2RyIChhc3NxIDpub3dlYi1yZWYgKG50aCAyIGluZm8pKSkpKQogCQkJICAgIChw dXNoIGluZm8gKGdldGhhc2ggcmVmIGNhY2hlKSkpKSkpCi0JCSAgICAgKGZ1bmNhbGwgZXhw YW5kLXJlZmVyZW5jZXMgaWQgY2FjaGUpKSkpKQorCQkgICAgIChmdW5jYWxsIGV4cGFuZC1y ZWZlcmVuY2VzIGlkIGNhY2hlKSkpKQorICAgICAgICAgICAgICAgICAgKGV4cGFuc2lvbiAo aWYgKGZ1bmN0aW9ucCBub3dlYi10cmFucykKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChmdW5jYWxsIG5vd2ViLXRyYW5zIGV4cGFuc2lvbikKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBleHBhbnNpb24pKSkKIAkgICAgIDs7IEludGVycG9zZSBQUkVG SVggYmV0d2VlbiBldmVyeSBsaW5lLgotCSAgICAgKG1hcGNvbmNhdCAjJ2lkZW50aXR5Ci0J CQkoc3BsaXQtc3RyaW5nIGV4cGFuc2lvbiAiW1xuXHJdIikKLQkJCShjb25jYXQgIlxuIiBw cmVmaXgpKSkpKSkKKwkgICAgIChpZiBub3dlYi1wcmVmaXgKKyAgICAgICAgICAgICAgICAg KG1hcGNvbmNhdCAjJ2lkZW50aXR5CisJCQkgICAgKHNwbGl0LXN0cmluZyBleHBhbnNpb24g IltcblxyXSIpCisJCQkgICAgKGNvbmNhdCAiXG4iIHByZWZpeCkpCisgICAgICAgICAgICAg ICBleHBhbnNpb24pKSkpKQogICAgICBib2R5IHQgdCAyKSkpCiAKIChkZWZ1biBvcmctYmFi ZWwtLXNjcmlwdC1lc2NhcGUtaW5uZXIgKHN0cikKLS0gCjIuMzYuMAoK --------------0yEBsP0NUC3gAM0mKNd8ZR0h Content-Type: text/x-patch; charset=UTF-8; name="0001-ob-core.el-noweb-prefix-header-argument-and-nw-synta.patch" Content-Disposition: attachment; filename*0="0001-ob-core.el-noweb-prefix-header-argument-and-nw-synta.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA4ZmRkMTYzYjNmNWM4MDQ5YzY3YTZmM2VhYjQ1ODdjYWM0YTZkMDRhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Uz1DMz1BOWJhc3RpZW49MjBNaXF1 ZWw/PSA8c2ViYXN0aWVuLm1pcXVlbEBwb3N0ZW8uZXU+CkRhdGU6IE1vbiwgNiBTZXAgMjAy MSAxODo0NTo0MiArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIG9iLWNvcmUuZWw6IGA6bm93ZWIt cHJlZml4YCBoZWFkZXIgYXJndW1lbnQgYW5kIDw8Im53Ij4+CiBzeW50YXgKCiogbGlzcC9v Yi1jb3JlLmVsIChvcmctYmFiZWwtZXhwYW5kLW5vd2ViLXJlZmVyZW5jZXMpOiBBZGQgc3Vw cG9ydCBmb3IKYG5vd2ViLXByZWZpeCcgaGVhZGVyIGFyZ3VtZW50LCB0byBub3QgcmVwZWF0 IHRoZSBwcmVmaXggY2hhcmFjdGVycwp3aGVuIGV4cGFuZGluZyBhIG5vd2ViIHJlZmVyZW5j ZS4gQWRkIHN1cHBvcnQgZm9yIDw8Im53Ij4+IG5vd2ViCnN5bnRheCwgdG8gaW5zZXJ0IGEg bGlzcCBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvbnRlbnQuCihvcmctYmFiZWwt Y29tbW9uLWhlYWRlci1hcmdzLXctdmFsdWVzKToKKG9yZy1iYWJlbC1zYWZlLWhlYWRlci1h cmdzKTogQWRkIGBub3dlYi1wcmVmaXgnIHZhbHVlcy4KKG9yZy1iYWJlbC1ub3dlYi13cmFw KTogQWRkIHN1cHBvcnQgZm9yIDw8Im53Ij4+IHN5bnRheC4KKiBkb2Mvb3JnLW1hbnVhbC5v cmc6IERvY3VtZW50IGBub3dlYi1wcmVmaXgnIGFuZCA8PCJudyI+PiBub3dlYgpzeW50YXgu CiogZXRjL09SRy1ORVdTOiBEb2N1bWVudCBgOm5vd2ViLXByZWZpeCcgYW5kIDw8Im53Ij4+ IG5vd2ViIHN5bnRheC4KLS0tCiBkb2Mvb3JnLW1hbnVhbC5vcmcgfCA0NiArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBldGMvT1JHLU5FV1MgICAg ICAgfCAyNSArKysrKysrKysrKysrKysrKysrKysrKystCiBsaXNwL29iLWNvcmUuZWwgICAg fCAzNCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5n ZWQsIDkzIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Rv Yy9vcmctbWFudWFsLm9yZyBiL2RvYy9vcmctbWFudWFsLm9yZwppbmRleCA2NzY4Y2E5OGQu LjJlMTQzNTI3OSAxMDA2NDQKLS0tIGEvZG9jL29yZy1tYW51YWwub3JnCisrKyBiL2RvYy9v cmctbWFudWFsLm9yZwpAQCAtMTg3NjAsNiArMTg3NjAsNTIgQEAgZWxzZToKICAgICBwcmlu dCgnZG8gdGhpbmdzIHdoZW4gZmFsc2UnKQogIytlbmRfZXhhbXBsZQogCitUaGlzIHByZWZp eCBiZWhhdmlvciBjYW4gYmUgdHVybmVkIG9mZiBpbiBhIGJsb2NrIGJ5IHNldHRpbmcgdGhl Cis9bm93ZWItcHJlZml4PSBoZWFkZXIgYXJndW1lbnQgdG8gPW5vPSwgYXMgaW46CisKKyMr YmVnaW5fZXhhbXBsZQorLCMrQkVHSU5fU1JDIGVsaXNwIDpub3dlYi1wcmVmaXggbm8KKyAg KHNldHEgZXhhbXBsZS1kYXRhICI8PGV4YW1wbGU+PiIpCissIytFTkRfU1JDCisjK2VuZF9l eGFtcGxlCisKKyMrdGV4aW5mbzogQG5vaW5kZW50Cit3aGljaCBleHBhbmRzIHRvOgorCisj K2JlZ2luX2V4YW1wbGUKKyhzZXRxIGV4YW1wbGUtZGF0YSAidGhpcyBpcyB0aGUKK211bHRp LWxpbmUgYm9keSBvZiBleGFtcGxlIikKKyMrZW5kX2V4YW1wbGUKKworSW5zdGVhZCBvZiBp bnNlcnRpbmcgdGhlIGNvbnRlbnQgb2YgYSBibG9jaywgb25lIG1heSBpbnNlcnQgYSBsaXNw CitzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvbnRlbnQgdXNpbmcgdGhlIHN5bnRh eAorCis6IDw8IkNPREUtQkxPQ0stSUQiPj4KKworIyt0ZXhpbmZvOiBAbm9pbmRlbnQKK1dp dGg6CisKKyMrYmVnaW5fZXhhbXBsZQorLCMrTkFNRTogbGF0ZXgtaGVhZGVyCissIytCRUdJ Tl9TUkMgbGF0ZXgKKyAgXHVzZXBhY2thZ2V7YW1zbWF0aH0KKywjK0VORF9TUkMKKyMrZW5k X2V4YW1wbGUKKworIyt0ZXhpbmZvOiBAbm9pbmRlbnQKK3RoaXMgY29kZSBibG9jazoKKwor IytiZWdpbl9leGFtcGxlCissIytCRUdJTl9TUkMgZWxpc3AgOm5vd2ViIHllcworICAoc2V0 cSBoZWFkZXIgPDwibGF0ZXgtaGVhZGVyIj4+KQorLCMrRU5EX1NSQworIytlbmRfZXhhbXBs ZQorCisjK3RleGluZm86IEBub2luZGVudAorZXhwYW5kcyB0bzoKKworOiAoc2V0cSBoZWFk ZXIgIlxcdXNlcGFja2FnZXthbXNtYXRofSIpCisKIFdoZW4gaW4gZG91YnQgYWJvdXQgdGhl IG91dGNvbWUgb2YgYSBzb3VyY2UgY29kZSBibG9jayBleHBhbnNpb24sIHlvdQogY2FuIHBy ZXZpZXcgdGhlIHJlc3VsdHMgd2l0aCB0aGUgZm9sbG93aW5nIGNvbW1hbmQ6CiAKZGlmZiAt LWdpdCBhL2V0Yy9PUkctTkVXUyBiL2V0Yy9PUkctTkVXUwppbmRleCAyYjUzOWQzMDUuLjNh ODIyOWQ3MyAxMDA2NDQKLS0tIGEvZXRjL09SRy1ORVdTCisrKyBiL2V0Yy9PUkctTkVXUwpA QCAtMTUwLDcgKzE1MCw3IEBAIFRoZSBlbnRyeSBwb2ludHMgYXJlIH5vcmctcGVyc2lzdC1y ZWdpc3Rlcn4sIH5vcmctcGVyc2lzdC11bnJlZ2lzdGVyfiwKIH5vcmctcGVyc2lzdC1yZWFk fiwgYW5kIH5vcmctcGVyc2lzdC1yZWFkLWFsbH4uICBTdG9yaW5nIGNpcmN1bGFyCiBzdHJ1 Y3R1cmVzIGlzIHN1cHBvcnRlZC4gIFN0b3JpbmcgcmVmZXJlbmNlcyBiZXR3ZWVuIGRpZmZl cmVudAogdmFyaWFibGVzIGlzIGFsc28gc3VwcG9ydGVkIChzZWUgPTppbmhlcml0PSBrZXkg aW4KLX5vcmctcGVyc2lzdC1yZWdpc3Rlcn4pLiAgCit+b3JnLXBlcnNpc3QtcmVnaXN0ZXJ+ KS4KIAogVGhlIGxpYnJhcnkgcGVybWl0cyBzdG9yaW5nIGJ1ZmZlci1sb2NhbCB2YXJpYWJs ZXMuICBTdWNoIHZhcmlhYmxlcwogYXJlIGxpbmtlZCB0byB0aGUgYnVmZmVyIHRleHQsIGZp bGUgPWlub2RlPSwgYW5kIGZpbGUgcGF0aC4KQEAgLTE3Niw2ICsxNzYsMjkgQEAgSXRlbXMg aW4gYSBkZXNjcmlwdGlvbiBsaXN0IHRoYXQgYmVnaW4gd2l0aCA9RnVuY3Rpb246PSwgPVZh cmlhYmxlOj0KIG9yIGNlcnRhaW4gcmVsYXRlZCBwcmVmaXhlcyBhcmUgY29udmVydGVkIHVz aW5nIFRleGluZm8gZGVmaW5pdGlvbgogY29tbWFuZHMuCiAKKyoqKiBOZXcgPTpub3dlYi1w cmVmaXg9IGJhYmVsIGhlYWRlciBhcmd1bWVudAorCis9Om5vd2ViLXByZWZpeD0gY2FuIGJl IHNldCB0byA9bm89IHRvIHByZXZlbnQgdGhlIHByZWZpeCBjaGFyYWN0ZXJzCitmcm9tIGJl aW5nIHJlcGVhdGVkIHdoZW4gZXhwYW5kaW5nIGEgbXVsdGlsaW5lIG5vd2ViIHJlZmVyZW5j ZS4KKworKioqIE5ldyBzeW50YXggdG8gaW5zZXJ0IGEgc3RyaW5nIHJlcHJlc2VudGF0aW9u IG9mIGEgbm93ZWIgcmVmZXJlbmNlCisKK1VzZSA9PDwiZm9vIj4+PSB0byBpbnNlcnQgYSBs aXNwIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGNvbnRlbnQgb2YKK3RoZSA9Zm9vPSBibG9j ay4gRm9yIGV4YW1wbGU6CisKKyMrQkVHSU5fU1JDIG9yZworICAsIytCRUdJTl9TUkMgTGFU ZVggOm5vd2ViLXJlZiBmb28KKyAgICBcdXNlcGFja2FnZXtiYXJ9CisgICwjK0VORF9TUkMK KworICAsIytCRUdJTl9TUkMgZW1hY3MtbGlzcCA6bm93ZWIgeWVzCisgICAgKHNldHEgbGF0 ZXgtaGVhZGVyIDw8ImZvbyI+PikKKyAgLCMrRU5EX1NSQworIytFTkRfU1JDCisKK3dpbGwg ZXhwYW5kIHRvCis6IChzZXRxIGxhdGV4LWhlYWRlciAiXFx1c2VwYWNrYWdle2Jhcn0iKQor CiAqKiBOZXcgZnVuY3Rpb25zIGFuZCBjaGFuZ2VzIGluIGZ1bmN0aW9uIGFyZ3VtZW50cwog CiAqKiogTmV3IGZ1bmN0aW9uIH5vcmctZWxlbWVudC1jYWNoZS1tYXB+IGZvciBxdWljayBt YXBwaW5nIGFjcm9zcyBPcmcgZWxlbWVudHMKZGlmZiAtLWdpdCBhL2xpc3Avb2ItY29yZS5l bCBiL2xpc3Avb2ItY29yZS5lbAppbmRleCA2NTkwZWVlZTcuLmNhYzFhNDE2MiAxMDA2NDQK LS0tIGEvbGlzcC9vYi1jb3JlLmVsCisrKyBiL2xpc3Avb2ItY29yZS5lbApAQCAtMTg3LDcg KzE4Nyw5IEBAIE1hdGNoIGFueSByZWZlcmVuY2UsIG9yIG9ubHkgdGhvc2UgbWF0Y2hpbmcg UkVHRVhQLCBpZiBub24tbmlsLgogCiBXaGVuIG1hdGNoaW5nLCByZWZlcmVuY2UgaXMgc3Rv cmVkIGluIG1hdGNoIGdyb3VwIDEuIgogICAoY29uY2F0IChyZWdleHAtcXVvdGUgb3JnLWJh YmVsLW5vd2ViLXdyYXAtc3RhcnQpCi0JICAob3IgcmVnZXhwICJcXChbXiBcdFxuXVxcKD86 Lio/W14gXHRcbl1cXCk/XFwpIikKKyAgICAgICAgICAiXFwoPzI6XCI/XFwpIgorCSAgKG9y IHJlZ2V4cCAiXFwoPzE6W14gXHRcbl1cXCg/Oi4qP1teIFx0XG5dXFwpP1xcKSIpCisgICAg ICAgICAgIlxcMiIKIAkgIChyZWdleHAtcXVvdGUgb3JnLWJhYmVsLW5vd2ViLXdyYXAtZW5k KSkpCiAKIChkZWZ2YXIgb3JnLWJhYmVsLXNyYy1uYW1lLXJlZ2V4cApAQCAtNDEzLDYgKzQx NSw3IEBAIHRoZW4gcnVuIGBvcmctYmFiZWwtc3dpdGNoLXRvLXNlc3Npb24nLiIKICAgICAo bm93ZWIJLiAoKHllcyBubyB0YW5nbGUgbm8tZXhwb3J0IHN0cmlwLWV4cG9ydCkpKQogICAg IChub3dlYi1yZWYJLiA6YW55KQogICAgIChub3dlYi1zZXAgIC4gOmFueSkKKyAgICAobm93 ZWItcHJlZml4IC4gKChubyB5ZXMpKSkKICAgICAob3V0cHV0LWRpciAuIDphbnkpCiAgICAg KHBhZGxpbmUJLiAoKHllcyBubykpKQogICAgIChwb3N0ICAgICAgIC4gOmFueSkKQEAgLTQz OCw4ICs0NDEsOCBAQCBzcGVjaWZpYyBoZWFkZXIgYXJndW1lbnRzIGFzIHdlbGwuIikKIAog KGRlZmNvbnN0IG9yZy1iYWJlbC1zYWZlLWhlYWRlci1hcmdzCiAgICcoOmNhY2hlIDpjb2xu YW1lcyA6Y29tbWVudHMgOmV4cG9ydHMgOmVwaWxvZ3VlIDpobGluZXMgOm5vZXZhbAotCSAg IDpub3dlYiA6bm93ZWItcmVmIDpub3dlYi1zZXAgOnBhZGxpbmUgOnByb2xvZ3VlIDpyb3du YW1lcwotCSAgIDpzZXAgOnNlc3Npb24gOnRhbmdsZSA6d3JhcAorCSAgIDpub3dlYiA6bm93 ZWItcmVmIDpub3dlYi1zZXAgOm5vd2ViLXByZWZpeCA6cGFkbGluZQorICAgICAgICAgICA6 cHJvbG9ndWUgOnJvd25hbWVzIDpzZXAgOnNlc3Npb24gOnRhbmdsZSA6d3JhcAogCSAgICg6 ZXZhbCAuICgibmV2ZXIiICJxdWVyeSIpKQogCSAgICg6cmVzdWx0cyAuIChsYW1iZGEgKHN0 cikgKG5vdCAoc3RyaW5nLW1hdGNoICJmaWxlIiBzdHIpKSkpKQogICAiQSBsaXN0IG9mIHNh ZmUgaGVhZGVyIGFyZ3VtZW50cyBmb3IgYmFiZWwgc291cmNlIGJsb2Nrcy4KQEAgLTI4Mjcs NyArMjgzMCwxMSBAQCBibG9jayBidXQgYXJlIHBhc3NlZCBsaXRlcmFsbHkgdG8gdGhlIFwi ZXhhbXBsZS1ibG9ja1wiLiIKICAgICAgICAgIChsYW5nIChudGggMCBpbmZvKSkKICAgICAg ICAgIChib2R5IChudGggMSBpbmZvKSkKIAkgKGNvbW1lbnQgKHN0cmluZz0gIm5vd2ViIiAo Y2RyIChhc3NxIDpjb21tZW50cyAobnRoIDIgaW5mbykpKSkpCi0JIChub3dlYi1yZSAoZm9y bWF0ICJcXCguKj9cXClcXCglc1xcKSIKKyAgICAgICAgIChub3dlYi1wcmVmaXggKGxldCAo KHYgKGFzc3EgOm5vd2ViLXByZWZpeCAobnRoIDIgaW5mbykpKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAob3IgKG5vdCB2KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo YW5kIChvcmctbm90LW5pbCAoY2RyIHYpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChub3QgKGVxdWFsIChjZHIgdikgIm5vIikpKSkpKQorCSAobm93ZWItcmUgKGZv cm1hdCAiXFwoPzM6Lio/XFwpXFwoPzQ6JXNcXCkiCiAJCQkgICAod2l0aC1jdXJyZW50LWJ1 ZmZlciBwYXJlbnQtYnVmZmVyCiAJCQkgICAgIChvcmctYmFiZWwtbm93ZWItd3JhcCkpKSkK IAkgKGNhY2hlIG5pbCkKQEAgLTI4NzgsOSArMjg4NSwxMCBAQCBibG9jayBidXQgYXJlIHBh c3NlZCBsaXRlcmFsbHkgdG8gdGhlIFwiZXhhbXBsZS1ibG9ja1wiLiIKICAgICAgKGxhbWJk YSAobSkKICAgICAgICAod2l0aC1jdXJyZW50LWJ1ZmZlciBwYXJlbnQtYnVmZmVyCiAJIChz YXZlLW1hdGNoLWRhdGEKLQkgICAobGV0KiAoKHByZWZpeCAobWF0Y2gtc3RyaW5nIDEgbSkp Ci0JCSAgKGlkIChtYXRjaC1zdHJpbmcgMyBtKSkKKwkgICAobGV0KiAoKHByZWZpeCAobWF0 Y2gtc3RyaW5nIDMgbSkpCisJCSAgKGlkIChtYXRjaC1zdHJpbmcgMSBtKSkKIAkJICAoZXZh bHVhdGUgKHN0cmluZy1tYXRjaC1wICIoLiopIiBpZCkpCisgICAgICAgICAgICAgICAgICAo cHJpbnQtc3RyICg+IChsZW5ndGggKG1hdGNoLXN0cmluZyAyIG0pKSAwKSkKIAkJICAoZXhw YW5zaW9uCiAJCSAgIChjb25kCiAJCSAgICAoZXZhbHVhdGUKQEAgLTI5MjEsMTIgKzI5Mjks MTYgQEAgYmxvY2sgYnV0IGFyZSBwYXNzZWQgbGl0ZXJhbGx5IHRvIHRoZSBcImV4YW1wbGUt YmxvY2tcIi4iCiAJCQkgIChsZXQqICgoaW5mbyAob3JnLWJhYmVsLWdldC1zcmMtYmxvY2st aW5mbyB0KSkKIAkJCQkgKHJlZiAoY2RyIChhc3NxIDpub3dlYi1yZWYgKG50aCAyIGluZm8p KSkpKQogCQkJICAgIChwdXNoIGluZm8gKGdldGhhc2ggcmVmIGNhY2hlKSkpKSkpCi0JCSAg ICAgKGZ1bmNhbGwgZXhwYW5kLXJlZmVyZW5jZXMgaWQgY2FjaGUpKSkpKQorCQkgICAgIChm dW5jYWxsIGV4cGFuZC1yZWZlcmVuY2VzIGlkIGNhY2hlKSkpKQorICAgICAgICAgICAgICAg ICAgKGV4cGFuc2lvbiAoaWYgcHJpbnQtc3RyIChwcmluMS10by1zdHJpbmcgZXhwYW5zaW9u KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGFuc2lvbikpKQogCSAgICAg OzsgSW50ZXJwb3NlIFBSRUZJWCBiZXR3ZWVuIGV2ZXJ5IGxpbmUuCi0JICAgICAobWFwY29u Y2F0ICMnaWRlbnRpdHkKLQkJCShzcGxpdC1zdHJpbmcgZXhwYW5zaW9uICJbXG5ccl0iKQot CQkJKGNvbmNhdCAiXG4iIHByZWZpeCkpKSkpKQotICAgICBib2R5IHQgdCAyKSkpCisJICAg ICAoaWYgbm93ZWItcHJlZml4CisgICAgICAgICAgICAgICAgIChtYXBjb25jYXQgIydpZGVu dGl0eQorCQkJICAgIChzcGxpdC1zdHJpbmcgZXhwYW5zaW9uICJbXG5ccl0iKQorCQkJICAg IChjb25jYXQgIlxuIiBwcmVmaXgpKQorICAgICAgICAgICAgICAgZXhwYW5zaW9uKSkpKSkK KyAgICAgYm9keSB0IHQgNCkpKQogCiAoZGVmdW4gb3JnLWJhYmVsLS1zY3JpcHQtZXNjYXBl LWlubmVyIChzdHIpCiAgIChsZXQgKGluLXNpbmdsZSBpbi1kb3VibGUgYmFja3NsYXNoIG91 dCkKLS0gCjIuMzYuMAoK --------------0yEBsP0NUC3gAM0mKNd8ZR0h--