From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Brand Subject: Re: Add the capture feature "%(sexp)" to org-feed Date: Sun, 24 Jun 2012 19:51:32 +0200 Message-ID: References: <7822.1339898820@alphaville> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=f46d044287ca0c961004c33b84ef Return-path: Received: from eggs.gnu.org ([208.118.235.92]:55873) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SiqyI-0004xb-A2 for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 13:51:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SiqyF-0003yC-Vk for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 13:51:37 -0400 Received: from mail-wi0-f171.google.com ([209.85.212.171]:53305) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SiqyF-0003y4-Im for emacs-orgmode@gnu.org; Sun, 24 Jun 2012 13:51:35 -0400 Received: by wibhq4 with SMTP id hq4so1650329wib.12 for ; Sun, 24 Jun 2012 10:51:33 -0700 (PDT) In-Reply-To: <7822.1339898820@alphaville> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Org Mode Cc: nicholas.dokos@hp.com --f46d044287ca0c961004c33b84ef Content-Type: text/plain; charset=ISO-8859-1 Hi all On Sun, Jun 17, 2012 at 4:07 AM, Nick Dokos wrote: > Either require org-capture in org-feed or move the function to org.el, which > both org-capture and org-feed require. Thank you for the help. I have chosen the solution with require org-capture. The patch is now finished and attached: Add the capture feature "%(sexp)" to org-feed * lisp/org-capture.el (org-capture-fill-template): Fold the code for embedded elisp $(sexp) into the following new function and constant. (org-capture-template-embedded-elisp-re): New constant, contains the already existing common regexp. (org-capture-eval-and-replace-embedded-elisp): New function, contains the already existing common code. (org-capture-inside-embedded-elisp-p): New function to tell whether the point is inside embedded elisp %(sexp). * lisp/org-feed.el (org-feed-default-template): Add the new functionality to the docstring. (org-feed-format-entry): Add require org-capture to access the new common function. Add escaping of `"' to "simple %-escapes" if necessary for embedded lisp %(sexp). Add evaluation and replacement of embedded lisp %(sexp). Support for example %(capitalize \\\"%h\\\")" in the template of org-feed. Michael --f46d044287ca0c961004c33b84ef Content-Type: text/plain; charset=US-ASCII; name="0001-Add-the-capture-feature-sexp-to-org-feed.patch.txt" Content-Disposition: attachment; filename="0001-Add-the-capture-feature-sexp-to-org-feed.patch.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h3ueyiff0 RnJvbSBhMDkzMmQ5YWVkZmQwMGZkZWIyNDQ2YjQ0MWI0NTcyZTM5ZjgxMTFhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJyYW5kIDxtaWNoYWVsLmNoLmJyYW5kQGdtYWls LmNvbT4KRGF0ZTogU3VuLCAyNCBKdW4gMjAxMiAxOTo0NjoxNyArMDIwMApTdWJqZWN0OiBbUEFU Q0hdIEFkZCB0aGUgY2FwdHVyZSBmZWF0dXJlICIlKHNleHApIiB0byBvcmctZmVlZAoKKiBsaXNw L29yZy1jYXB0dXJlLmVsIChvcmctY2FwdHVyZS1maWxsLXRlbXBsYXRlKTogRm9sZCB0aGUgY29k ZSBmb3IKZW1iZWRkZWQgZWxpc3AgJChzZXhwKSBpbnRvIHRoZSBmb2xsb3dpbmcgbmV3IGZ1bmN0 aW9uIGFuZCBjb25zdGFudC4KKG9yZy1jYXB0dXJlLXRlbXBsYXRlLWVtYmVkZGVkLWVsaXNwLXJl KTogTmV3IGNvbnN0YW50LCBjb250YWlucyB0aGUKYWxyZWFkeSBleGlzdGluZyBjb21tb24gcmVn ZXhwLgoob3JnLWNhcHR1cmUtZXZhbC1hbmQtcmVwbGFjZS1lbWJlZGRlZC1lbGlzcCk6IE5ldyBm dW5jdGlvbiwgY29udGFpbnMgdGhlCmFscmVhZHkgZXhpc3RpbmcgY29tbW9uIGNvZGUuCihvcmct Y2FwdHVyZS1pbnNpZGUtZW1iZWRkZWQtZWxpc3AtcCk6IE5ldyBmdW5jdGlvbiB0byB0ZWxsIHdo ZXRoZXIgdGhlCnBvaW50IGlzIGluc2lkZSBlbWJlZGRlZCBlbGlzcCAlKHNleHApLgoqIGxpc3Av b3JnLWZlZWQuZWwgKG9yZy1mZWVkLWRlZmF1bHQtdGVtcGxhdGUpOiBBZGQgdGhlIG5ldyBmdW5j dGlvbmFsaXR5CnRvIHRoZSBkb2NzdHJpbmcuCihvcmctZmVlZC1mb3JtYXQtZW50cnkpOiBBZGQg cmVxdWlyZSBvcmctY2FwdHVyZSB0byBhY2Nlc3MgdGhlIG5ldyBjb21tb24KZnVuY3Rpb24uICBB ZGQgZXNjYXBpbmcgb2YgYCInIHRvICJzaW1wbGUgJS1lc2NhcGVzIiBpZiBuZWNlc3NhcnkgZm9y CmVtYmVkZGVkIGxpc3AgJShzZXhwKS4gIEFkZCBldmFsdWF0aW9uIGFuZCByZXBsYWNlbWVudCBv ZiBlbWJlZGRlZCBsaXNwCiUoc2V4cCkuCgpTdXBwb3J0IGZvciBleGFtcGxlICUoY2FwaXRhbGl6 ZSBcXFwiJWhcXFwiKSIgaW4gdGhlIHRlbXBsYXRlIG9mIG9yZy1mZWVkLgotLS0KIGxpc3Avb3Jn LWNhcHR1cmUuZWwgfCAgIDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tLQogbGlzcC9vcmctZmVlZC5lbCAgICB8ICAgNTEgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDc5 IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3Avb3JnLWNh cHR1cmUuZWwgYi9saXNwL29yZy1jYXB0dXJlLmVsCmluZGV4IDBlNmFiMmMuLjlhMGU5YzIgMTAw NjQ0Ci0tLSBhL2xpc3Avb3JnLWNhcHR1cmUuZWwKKysrIGIvbGlzcC9vcmctY2FwdHVyZS5lbApA QCAtMTM2OSwxNSArMTM2OSw3IEBAIFRoZSB0ZW1wbGF0ZSBtYXkgc3RpbGwgY29udGFpbiBcIiU/ XCIgZm9yIGN1cnNvciBwb3NpdGlvbmluZy4iCiAJICAgICAgKGVycm9yIChpbnNlcnQgKGZvcm1h dCAiJSUhW0NvdWxkbid0IGluc2VydCAlczogJXNdIgogCQkJCSAgICAgZmlsZW5hbWUgZXJyb3Ip KSkpKSkpCiAgICAgICA7OyAlKCkgZW1iZWRkZWQgZWxpc3AKLSAgICAgIChnb3RvLWNoYXIgKHBv aW50LW1pbikpCi0gICAgICAod2hpbGUgKHJlLXNlYXJjaC1mb3J3YXJkICIlXFwoKC4rKVxcKSIg bmlsIHQpCi0JKHVubGVzcyAob3JnLWNhcHR1cmUtZXNjYXBlZC0lKQotCSAgKGdvdG8tY2hhciAo bWF0Y2gtYmVnaW5uaW5nIDApKQotCSAgKGxldCAoKHRlbXBsYXRlLXN0YXJ0IChwb2ludCkpKQot CSAgICAoZm9yd2FyZC1jaGFyIDEpCi0JICAgIChsZXQgKChyZXN1bHQgKG9yZy1ldmFsIChyZWFk IChjdXJyZW50LWJ1ZmZlcikpKSkpCi0JICAgICAgKGRlbGV0ZS1yZWdpb24gdGVtcGxhdGUtc3Rh cnQgKHBvaW50KSkKLQkgICAgICAoaW5zZXJ0IHJlc3VsdCkpKSkpCisgICAgICAob3JnLWNhcHR1 cmUtZXZhbC1hbmQtcmVwbGFjZS1lbWJlZGRlZC1lbGlzcCkKIAogICAgICAgOzsgVGhlIGN1cnJl bnQgdGltZQogICAgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKQEAgLTE1MTEsNiArMTUwMyw0 MyBAQCBUaGUgdGVtcGxhdGUgbWF5IHN0aWxsIGNvbnRhaW4gXCIlP1wiIGZvciBjdXJzb3IgcG9z aXRpb25pbmcuIgogCXQpCiAgICAgbmlsKSkKIAorKGRlZmNvbnN0IG9yZy1jYXB0dXJlLXRlbXBs YXRlLWVtYmVkZGVkLWVsaXNwLXJlCisgIDs7IGVtYmVkZGVkIGVsaXNwICUoc2V4cCkgaW4gYG9y Zy1mZWVkLWZvcm1hdC1lbnRyeScgc3VwcG9ydHMgc2ltcGxlCisgIDs7ICUtZXNjYXBlcyBhcyBh cmd1bWVudHMsIHRoZXJlZm9yZSBhbGxvdyBoZXJlIFxuIGNvbWluZyBmcm9tIHRoZQorICA7OyBy ZXN1bHQgb2YgZXZhbHVhdGVkIHNpbXBsZSAlLWVzY2FwZXMgaW5zaWRlIGVtYmVkZGVkIGVsaXNw ICUoc2V4cCkKKyAgIiVcXCgoXFwoLlxcfFxuXFwpKlxcKSIpCisKKyhkZWZ1biBvcmctY2FwdHVy ZS1ldmFsLWFuZC1yZXBsYWNlLWVtYmVkZGVkLWVsaXNwICgpCisgICJFdmFsdWF0ZSBlbWJlZGRl ZCBlbGlzcCAlKHNleHApIGFuZCByZXBsYWNlIHdpdGggdGhlIHJlc3VsdC4iCisgIChnb3RvLWNo YXIgKHBvaW50LW1pbikpCisgICh3aGlsZSAocmUtc2VhcmNoLWZvcndhcmQgb3JnLWNhcHR1cmUt dGVtcGxhdGUtZW1iZWRkZWQtZWxpc3AtcmUgbmlsIHQpCisgICAgKHVubGVzcyAob3JnLWNhcHR1 cmUtZXNjYXBlZC0lKQorICAgICAgKGdvdG8tY2hhciAobWF0Y2gtYmVnaW5uaW5nIDApKQorICAg ICAgKGxldCAoKHRlbXBsYXRlLXN0YXJ0IChwb2ludCkpKQorCShmb3J3YXJkLWNoYXIgMSkKKwko bGV0ICgocmVzdWx0IChvcmctZXZhbCAocmVhZCAoY3VycmVudC1idWZmZXIpKSkpKQorCSAgKGRl bGV0ZS1yZWdpb24gdGVtcGxhdGUtc3RhcnQgKHBvaW50KSkKKwkgIChpbnNlcnQgcmVzdWx0KSkp KSkpCisKKyhkZWZ1biBvcmctY2FwdHVyZS1pbnNpZGUtZW1iZWRkZWQtZWxpc3AtcCAoKQorICAi UmV0dXJuIG5vbi1uaWwgaWYgcG9pbnQgaXMgaW5zaWRlIG9mIGVtYmVkZGVkIGVsaXNwICUoc2V4 cCkuIgorICAobGV0ICgocC1vcmlnIChwb2ludCkpIHAtdGVtcCBlbWJlZGRlZCkKKyAgICAoc2F2 ZS1leGN1cnNpb24KKyAgICAgIChzYXZlLW1hdGNoLWRhdGEKKwkod2hlbiAocmUtc2VhcmNoLWJh Y2t3YXJkIG9yZy1jYXB0dXJlLXRlbXBsYXRlLWVtYmVkZGVkLWVsaXNwLXJlCisJCQkJICBuaWwg dCkKKwkgIDs7IG1hdGNoIGFnYWluIGZvcndhcmQsIGJhY2t3YXJkIGRpZCBub3QgbWF0Y2ggYmV5 b25kIGl0cyBzdGFydAorCSAgKHJlLXNlYXJjaC1mb3J3YXJkIG9yZy1jYXB0dXJlLXRlbXBsYXRl LWVtYmVkZGVkLWVsaXNwLXJlIG5pbCB0KQorCSAgOzsgY29udmVydCBvcmlnaW5hbCBwb2ludCB0 byBjb3JyZXNwb25kaW5nIHBvaW50IGluIHRlbXAgYnVmZmVyCisJICAoc2V0cSBwLXRlbXAgKCsg cC1vcmlnICgtIChtYXRjaC1iZWdpbm5pbmcgMSkpIDEpKQorCSAgKHNldHEgZW1iZWRkZWQgKG1h dGNoLXN0cmluZyAxKSkKKwkgICh3aXRoLXRlbXAtYnVmZmVyICA7IGRvbid0IGludGVyZmVyZSB3 aXRoIG9yaWdpbmFsIG1ham9yIG1vZGUKKwkgICAgKGluc2VydCBlbWJlZGRlZCkKKwkgICAgKGJl Z2lubmluZy1vZi1idWZmZXIpCisJICAgIChlbWFjcy1saXNwLW1vZGUpICA7IHRvIGRlYWwgd2l0 aCBmb3IgZXhhbXBsZSAlKGxlbmd0aCAiKSIpCisJICAgICh3aGVuIChpZ25vcmUtZXJyb3JzIChm b3J3YXJkLXNleHApIHQpCisJICAgICAgKDwgcC10ZW1wIChwb2ludCkpKSkpKSkpKQorCiA7Ozsj IyNhdXRvbG9hZAogKGRlZnVuIG9yZy1jYXB0dXJlLWltcG9ydC1yZW1lbWJlci10ZW1wbGF0ZXMg KCkKICAgIlNldCBvcmctY2FwdHVyZS10ZW1wbGF0ZXMgdG8gYmUgc2ltaWxhciB0byBgb3JnLXJl bWVtYmVyLXRlbXBsYXRlcycuIgpAQCAtMTU1Miw0ICsxNTgxLDggQEAgVGhlIHRlbXBsYXRlIG1h eSBzdGlsbCBjb250YWluIFwiJT9cIiBmb3IgY3Vyc29yIHBvc2l0aW9uaW5nLiIKIAogKHByb3Zp ZGUgJ29yZy1jYXB0dXJlKQogCis7OyBMb2NhbCB2YXJpYWJsZXM6Cis7OyBzZW50ZW5jZS1lbmQt ZG91YmxlLXNwYWNlOiB0Cis7OyBFbmQ6CisKIDs7OyBvcmctY2FwdHVyZS5lbCBlbmRzIGhlcmUK ZGlmZiAtLWdpdCBhL2xpc3Avb3JnLWZlZWQuZWwgYi9saXNwL29yZy1mZWVkLmVsCmluZGV4IDY5 MDFmZmEuLjQ2ZGM2YjcgMTAwNjQ0Ci0tLSBhL2xpc3Avb3JnLWZlZWQuZWwKKysrIGIvbGlzcC9v cmctZmVlZC5lbApAQCAtMjMwLDcgKzIzMCwxMCBAQCBmb2xsb3dpbmcgc3BlY2lhbCBlc2NhcGVz IGFyZSB2YWxpZCBhcyB3ZWxsOgogICAgICAgICB0aGUgY3VycmVudCBkYXRlLgogJVQgICAgICBk YXRlIGFuZCB0aW1lCiAldSwlVSAgIGxpa2UgJXQsJVQsIGJ1dCBpbmFjdGl2ZSB0aW1lIHN0YW1w cwotJWEgICAgICBBIGxpbmssIGZyb20gPGd1aWQ+IGlmIHRoYXQgaXMgYSBwZXJtYWxpbmssIGVs c2UgZnJvbSA8bGluaz4iCislYSAgICAgIEEgbGluaywgZnJvbSA8Z3VpZD4gaWYgdGhhdCBpcyBh IHBlcm1hbGluaywgZWxzZSBmcm9tIDxsaW5rPgorJShzZXhwKSBldmFsdWF0ZSBlbGlzcCBgKHNl eHApJyBhbmQgcmVwbGFjZSB3aXRoIHRoZSByZXN1bHQsCisgICAgICAgIHRoZSBhYm92ZSBzaW1w bGUgJS1lc2NhcGVzIGNhbiBiZSB1c2VkIGFzIGFyZ3VtZW50cywKKyAgICAgICAgZm9yIGV4YW1w bGUgJShjYXBpdGFsaXplIFxcXCIlaFxcXCIpIgogICA6Z3JvdXAgJ29yZy1mZWVkCiAgIDp0eXBl ICcoc3RyaW5nIDp0YWcgIlRlbXBsYXRlIikpCiAKQEAgLTUwNiw5ICs1MDksMTAgQEAgVGhpcyB3 aWxsIGZpbmQgRFJBV0VSIGFuZCBleHRyYWN0IHRoZSBhbGlzdC4iCiBFTlRSWSBpcyBhIHByb3Bl cnR5IGxpc3QuICBUaGlzIGZ1bmN0aW9uIGFkZHMgYSBgOmZvcm1hdHRlZC1mb3Itb3JnJyBwcm9w ZXJ0eQogYW5kIHJldHVybnMgdGhlIGZ1bGwgcHJvcGVydHkgbGlzdC4KIElmIHRoYXQgcHJvcGVy dHkgaXMgYWxyZWFkeSBwcmVzZW50LCBub3RoaW5nIGNoYW5nZXMuIgorICAocmVxdWlyZSAnb3Jn LWNhcHR1cmUpCiAgIChpZiBmb3JtYXR0ZXIKICAgICAgIChmdW5jYWxsIGZvcm1hdHRlciBlbnRy eSkKLSAgICAobGV0IChkbGluZXMgZm10IHRtcCBpbmRlbnQgdGltZSBuYW1lCisgICAgKGxldCAo ZGxpbmVzIHRpbWUgZXNjYXBlIG5hbWUgdG1wCiAJCSB2LWggdi10IHYtVCB2LXUgdi1VIHYtYSkK ICAgICAgIChzZXRxIGRsaW5lcyAob3JnLXNwbGl0LXN0cmluZyAob3IgKHBsaXN0LWdldCBlbnRy eSA6ZGVzY3JpcHRpb24pICI/Pz8iKQogCQkJCSAgICAgIlxuIikKQEAgLTUyNywyMCArNTMxLDM1 IEBAIElmIHRoYXQgcHJvcGVydHkgaXMgYWxyZWFkeSBwcmVzZW50LCBub3RoaW5nIGNoYW5nZXMu IgogCQkgICIiKSkKICAgICAgICh3aXRoLXRlbXAtYnVmZmVyCiAJKGluc2VydCB0ZW1wbGF0ZSkK KworCTs7IFNpbXBsZSAlLWVzY2FwZXMKKwk7OyBiZWZvcmUgZW1iZWRkZWQgZWxpc3AgdG8gc3Vw cG9ydCBzaW1wbGUgJS1lc2NhcGVzIGFzCisJOzsgYXJndW1lbnRzIGZvciBlbWJlZGRlZCBlbGlz cAogCShnb3RvLWNoYXIgKHBvaW50LW1pbikpCiAJKHdoaWxlIChyZS1zZWFyY2gtZm9yd2FyZCAi JVxcKFthLXpBLVpdK1xcKSIgbmlsIHQpCi0JICAoc2V0cSBuYW1lIChtYXRjaC1zdHJpbmcgMSkp Ci0JICAoY29uZAotCSAgICgobWVtYmVyIG5hbWUgJygiaCIgInQiICJUIiAidSIgIlUiICJhIikp Ci0JICAgIChyZXBsYWNlLW1hdGNoIChzeW1ib2wtdmFsdWUgKGludGVybiAoY29uY2F0ICJ2LSIg bmFtZSkpKSB0IHQpKQotCSAgICgoc2V0cSB0bXAgKHBsaXN0LWdldCBlbnRyeSAoaW50ZXJuIChj b25jYXQgIjoiIG5hbWUpKSkpCi0JICAgIChzYXZlLWV4Y3Vyc2lvbgotCSAgICAgIChzYXZlLW1h dGNoLWRhdGEKLQkJKGJlZ2lubmluZy1vZi1saW5lIDEpCi0JCSh3aGVuIChsb29raW5nLWF0IChj b25jYXQgIl5cXChbIFx0XSpcXCklIiBuYW1lICJbIFx0XSokIikpCi0JCSAgKHNldHEgdG1wIChv cmctZmVlZC1tYWtlLWluZGVudGVkLWJsb2NrCi0JCQkgICAgIHRtcCAob3JnLWdldC1pbmRlbnRh dGlvbikpKSkpKQotCSAgICAocmVwbGFjZS1tYXRjaCB0bXAgdCB0KSkpKQorCSAgKHVubGVzcyAo b3JnLWNhcHR1cmUtZXNjYXBlZC0lKQorCSAgICAoc2V0cSBlc2NhcGUgKG9yZy1jYXB0dXJlLWlu c2lkZS1lbWJlZGRlZC1lbGlzcC1wKQorCQkgIG5hbWUgKG1hdGNoLXN0cmluZyAxKSkKKwkgICAg KGNvbmQKKwkgICAgICgobWVtYmVyIG5hbWUgJygiaCIgInQiICJUIiAidSIgIlUiICJhIikpCisJ ICAgICAgKHNldHEgdG1wIChzeW1ib2wtdmFsdWUgKGludGVybiAoY29uY2F0ICJ2LSIgbmFtZSkp KSkpCisJICAgICAoKHNldHEgdG1wIChwbGlzdC1nZXQgZW50cnkgKGludGVybiAoY29uY2F0ICI6 IiBuYW1lKSkpKQorCSAgICAgIChzYXZlLWV4Y3Vyc2lvbgorCQkoc2F2ZS1tYXRjaC1kYXRhCisJ CSAgKGJlZ2lubmluZy1vZi1saW5lIDEpCisJCSAgKHdoZW4gKGxvb2tpbmctYXQKKwkJCSAoY29u Y2F0ICJeXFwoWyBcdF0qXFwpJSIgbmFtZSAiWyBcdF0qJCIpKQorCQkgICAgKHNldHEgdG1wIChv cmctZmVlZC1tYWtlLWluZGVudGVkLWJsb2NrCisJCQkgICAgICAgdG1wIChvcmctZ2V0LWluZGVu dGF0aW9uKSkpKSkpKSkKKwkgICAgKHdoZW4gdG1wCisJICAgICAgOzsgZXNjYXBlIHN0cmluZyBk ZWxpbWl0ZXJzIGAiJyB3aGVuIGluc2lkZSAlKCkgZW1iZWRkZWQgbGlzcAorCSAgICAgICh3aGVu IGVzY2FwZQorCQkoc2V0cSB0bXAgKHJlcGxhY2UtcmVnZXhwLWluLXN0cmluZyAiXCIiICJcXFxc XCIiIHRtcCkpKQorCSAgICAgIChyZXBsYWNlLW1hdGNoIHRtcCB0IHQpKSkpCisKKwk7OyAlKCkg ZW1iZWRkZWQgZWxpc3AKKwkob3JnLWNhcHR1cmUtZXZhbC1hbmQtcmVwbGFjZS1lbWJlZGRlZC1l bGlzcCkKKwogCShkZWNvZGUtY29kaW5nLXN0cmluZwogCSAoYnVmZmVyLXN0cmluZykgKGRldGVj dC1jb2RpbmctcmVnaW9uIChwb2ludC1taW4pIChwb2ludC1tYXgpIHQpKSkpKSkKIApAQCAtNjcz LDQgKzY5Miw4IEBAIGZvcm1hdHRlZCBhcyBhIHN0cmluZywgbm90IHRoZSBvcmlnaW5hbCBYTUwg ZGF0YS4iCiAKIChwcm92aWRlICdvcmctZmVlZCkKIAorOzsgTG9jYWwgdmFyaWFibGVzOgorOzsg c2VudGVuY2UtZW5kLWRvdWJsZS1zcGFjZTogdAorOzsgRW5kOgorCiA7Ozsgb3JnLWZlZWQuZWwg ZW5kcyBoZXJlCi0tIAoxLjcuNC4yCgo= --f46d044287ca0c961004c33b84ef--