From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id KIaZA+lBpWUj9wAAe85BDQ:P1 (envelope-from ) for ; Mon, 15 Jan 2024 15:32:09 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id KIaZA+lBpWUj9wAAe85BDQ (envelope-from ) for ; Mon, 15 Jan 2024 15:32:09 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=azules.eu header.s=mailkey header.b=HCkVX+QH; dmarc=fail reason="SPF not aligned (relaxed)" header.from=azules.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" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1705329129; 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=o5Yk/wpUDS5XsGXIQWjG86N+3/PS6RFzAGRGLPPCx7E=; b=doT89+0kCXBB5he9WeRaXut+b2XYdR31eD2PWpRkpQWCbmjYSuZD/5Ts1MGiyUzNr3XRTf qkFzpnvlcLaEHifwRsA0gD2N/oDn1cfygg4amI/gu5rf20Y86yCMKE5CTOttbBStQDKdj2 oSfAklkEVk/ZpmDOhwOjsaMZyc71MyD7bmpfCInMwX8r7G81Inhv13jApAbaEUwgoaHDTH rHxg9eCg+qrGz/215x/fMzVbXDzoIfM3pqzwTaYaNzFREPWnEyNZ9z/LCIU7xnmM+0B8IA GdXBjml0RxWmYMxmnfwZub1aYXDQYcTllUpD6D0bsRdE4/uTVN3Ww9ycMT395A== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1705329129; a=rsa-sha256; cv=none; b=jaPEoN1Pn+N+0EJELrS56kIEybw13V/EYIcotUA+zjlJXB/uZvdS/Q+qkJxCxpHFI98XEd +PpXspvZ3DqwuzFEz9Wf1LKh8ETW4bEXSfNYD5lvN2y0w+6whAk4OzurLT4FqU4dBbMcCa F3Sun6DFR8raq10cjMGUvNMPSP1M0T2rthOKSvGmCrxHwVBDPVpaKVbe6W9GPhHUXutf7M XDL4B8WXv2NowPu3vXcHWlsRtQ6gnh7xWYUX0rOEoUtZJzZN1WI82tEHjErQYRbmyW+GVD D7VV14nBO7i7ZVhOqYD0ls6oNQ7yHJQkjo7PwEW555VDCfKE5gODPjd30VkpKw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=azules.eu header.s=mailkey header.b=HCkVX+QH; dmarc=fail reason="SPF not aligned (relaxed)" header.from=azules.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" 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 5A134D9E1 for ; Mon, 15 Jan 2024 15:32:08 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rPMuJ-0000tt-Es; Mon, 15 Jan 2024 08:21:39 -0500 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 1rPMuG-0000tf-5j for emacs-orgmode@gnu.org; Mon, 15 Jan 2024 08:21:38 -0500 Received: from 82-64-235-169.subs.proxad.net ([82.64.235.169] helo=azules.eu) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rPMuD-0003q6-Kz for emacs-orgmode@gnu.org; Mon, 15 Jan 2024 08:21:35 -0500 Content-Type: multipart/mixed; boundary="------------KjFZrU2t08AMehyvAXK86HPi" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=azules.eu; s=mailkey; t=1705324526; bh=aZsKKVMI3RzYe++h5y4+fmNJn2ey07LS4XmrOT6G2dI=; h=Date:To:From:Subject; b=HCkVX+QH2gldK4ByBNUFEwfVA+9w4B8hukpt86gYTMgnVYZavskWA4hbL5AOkGjo3 y/lr+6JTTaJli6OeIXeBRmiN02P0+x0Ct1nF7AEl4R/3DePSykxH2yAE1RqH8e2xaG HLfn0XbJrmTcMvR2rMK0Oyt7wQm81l8Bdk92v5Ug= Message-ID: Date: Mon, 15 Jan 2024 14:15:26 +0100 MIME-Version: 1.0 To: emacs-orgmode@gnu.org Content-Language: fr From: Garulfo Subject: back-end - access to :mode attribute for section and symbol-name X-MailScanner-ID: 71E6A11ECE0E.A268C X-MailScanner: Found to be clean X-MailScanner-From: garulfo@azules.eu Received-SPF: pass client-ip=82.64.235.169; envelope-from=garulfo@azules.eu; helo=azules.eu 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_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, NO_FM_NAME_IP_HOSTN=0.576, RCVD_IN_PBL=3.335, RCVD_IN_SORBS_DUL=0.001, RDNS_DYNAMIC=0.982, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, TVD_RCVD_IP=0.001, T_SCC_BODY_TEXT_LINE=-0.01 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: mx10.migadu.com X-Migadu-Spam-Score: 2.41 X-Spam-Score: 2.41 X-Migadu-Queue-Id: 5A134D9E1 X-TUID: 59OSmzVgzTEq This is a multi-part message in MIME format. --------------KjFZrU2t08AMehyvAXK86HPi Content-Type: multipart/alternative; boundary="------------CqxdVQvHvX0YG0lKp5gYpY2i" --------------CqxdVQvHvX0YG0lKp5gYpY2i Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi all, I try to learn how to start a new back-end for ConTeXt (https://wiki.contextgarden.net). There is already a version based on ox-latex.el (https://github.com/Jason-S-Ross/ox-context/) but in order to contribute I wanted to learn the basics. I started a first elisp script (attached). For "ox-mycontext-section", I try to access the attribute ":mode" of the section in order to make the difference between "first-section" and "section". I had to use "symbol-name" :    (let*       ((section_mode (symbol-name (org-element-property :mode section)))) Questions : 1/ Is it the "org-mode" way to do ? 2/ What should I read to understand why "symbol-name" is needed, whereas usually "org-element-property" just return the appropriate string. Thanks --------------CqxdVQvHvX0YG0lKp5gYpY2i Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit Hi all,

I try to learn how to start a new back-end for ConTeXt (https://wiki.contextgarden.net).
There is already a version based on ox-latex.el (https://github.com/Jason-S-Ross/ox-context/)
but in order to contribute I wanted to learn the basics.

I started a first elisp script (attached).

For "ox-mycontext-section", I try to access the attribute ":mode" of the section
in order to make the difference between "first-section" and "section".

I had to use "
symbol-name" :

   (let*
      ((section_mode (symbol-name (org-element-property :mode section))))

Questions : 
1/ Is it the "org-mode" way to do ?
2/ What should I read to understand why "s
ymbol-name" is needed, whereas usually "org-element-property" just return the appropriate string.


Thanks
--------------CqxdVQvHvX0YG0lKp5gYpY2i-- --------------KjFZrU2t08AMehyvAXK86HPi Content-Type: text/plain; charset=UTF-8; name="orgmode_export_backend_for_conTeXt_trial_v01.el" Content-Disposition: attachment; filename="orgmode_export_backend_for_conTeXt_trial_v01.el" Content-Transfer-Encoding: base64 Ozsgb3BlbiB0aGlzIGZpbGUgd2l0aCBjb21tYW5kCjs7IGVtYWNzICAtLW5vLXNwbGFzaCAt cSAtbW0gaG93X3RvX3dyaXRlX2FfY29udGV4dF9leHBvcnRfYmFja2VuZF92MDEuZWwKCjs7 IEluICJlbWFjcy1saXNwIiBkcm9wZG93biBtZW51IGFib3ZlLCBzZWxlY3QgImV2YWx1YXRl IGJ1ZmZlciIKOzsgdGhlbiwgYSBmaXJzdCAgQ3RybC1jIEN0cmwtYyB3aWxsIGNvbXBpbGUK OzsgZmluYWxseSwgYSBzZWNvbmQgQ3RybC1jIEN0cmwtYyB3aWxsIGJyaW5nIHlvdSBhIHBk ZiB2aWV3ZXIKOzsgeW91IGNhbiB0aGVuIHJlYWQgdGhpcyBkb2N1bWVudAoKOzsgRVRBUEUg MCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KOzsgTWluaW1hbCBjcnlwdGljIGNvbmZpZyB0byB1c2UgQ29u VGVYdCBmcm9tIGVtYWNzCgooY3VhLW1vZGUgdCkKCihyZXF1aXJlICdwYWNrYWdlKQooYWRk LXRvLWxpc3QgJ3BhY2thZ2UtYXJjaGl2ZXMgJygibWVscGEiIC4gImh0dHBzOi8vbWVscGEu b3JnL3BhY2thZ2VzLyIpIHQpCihwYWNrYWdlLWluaXRpYWxpemUpCgoocmVxdWlyZSAnb3gp Cgooc2V0cSBDb25UZVh0LU1hcmstdmVyc2lvbiAiSVYiKSAKKHVzZS1wYWNrYWdlIHRleCA6 ZW5zdXJlIGF1Y3RleCkKKHVzZS1wYWNrYWdlIGNvbnRleHQpCihzZXRxIFRlWC12aWV3LXBy b2dyYW0tc2VsZWN0aW9uICAgICcoKG91dHB1dC1wZGYgIlBERiBWaWV3ZXIiKSkpCihpZiAo ZXEgc3lzdGVtLXR5cGUgJ2dudS9saW51eCkKICAgIChzZXRxIFRlWC12aWV3LXByb2dyYW0t bGlzdCAgICAgJygoIlBERiBWaWV3ZXIiICJva3VsYXIgJW8iKSkpKQooaWYgKGVxIHN5c3Rl bS10eXBlICd3aW5kb3dzLW50KQogICAgKHNldHEgVGVYLXZpZXctcHJvZ3JhbS1saXN0ICAg ICAnKCgiUERGIFZpZXdlciIgIkFjcm9SZDMyICVvIikpKSkKKHNldHEgVGVYLWRlZmF1bHQt bW9kZSAnY29udGV4dC1tb2RlKQooYWRkLWhvb2sgJ0NvblRlWHQtbW9kZS1ob29rCgkgIChs YW1iZGEoKQoJICAgIChzZXRxIFRlWC1jb21tYW5kLWRlZmF1bHQgIkNvblRlWHQgRnVsbCIp KSkKCgo7OyBFVEFQRSAxIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo7OyBDcmVhdGUgMiBuZXcgZW1wdHkg YnVmZmVyczogMSBmb3Igb3JnIGlucHV0LCAxIGZvciB0ZXggb3V0cHV0Cjs7IERpc3BsYXkg dGhlbQoKKGRlbGV0ZS1vdGhlci13aW5kb3dzKQoKKGRlZnVuIGNsZWFuX2JlZm9yZV9kZW1v IChidWZmZXJuYW1lKQogIChpZiAoZ2V0LWJ1ZmZlciBidWZmZXJuYW1lKQogICAgICAoa2ls bC1idWZmZXIgYnVmZmVybmFtZSkpCiAgKGdlbmVyYXRlLW5ldy1idWZmZXIgYnVmZmVybmFt ZSkpCgooc2V0cSBkZW1vX25hbWVfb3JnICJkZW1vX2ZpbGUub3JnIikKKHNldHEgZGVtb19u YW1lX3RleCAiZGVtb19maWxlLnRleCIpCgooY2xlYW5fYmVmb3JlX2RlbW8gZGVtb19uYW1l X29yZykKKGNsZWFuX2JlZm9yZV9kZW1vIGRlbW9fbmFtZV90ZXgpICAKCih3aXRoLWN1cnJl bnQtYnVmZmVyIGRlbW9fbmFtZV9vcmcgKG9yZy1tb2RlKSkKKGRpc3BsYXktYnVmZmVyIGRl bW9fbmFtZV9vcmcKICAgICAgICAgICAgICAgICcoZGlzcGxheS1idWZmZXItaW4tc2lkZS13 aW5kb3cgIC4gKChzaWRlIC4gcmlnaHQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAoc2xvdCAuIDApCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAod2luZG93LXdpZHRoIC4gODApKSkp Cgood2l0aC1jdXJyZW50LWJ1ZmZlciBkZW1vX25hbWVfdGV4IChjb250ZXh0LW1vZGUpKQoo ZGlzcGxheS1idWZmZXIgICBkZW1vX25hbWVfdGV4CiAgICAgICAgICAgICAgICAgJyhkaXNw bGF5LWJ1ZmZlci1pbi1zaWRlLXdpbmRvdyAuICgoc2lkZSAuIHJpZ2h0KQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNsb3QgLiAxKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHdp bmRvdy13aWR0aCAuIDgwKSkpKQoKOzsgRVRBUEUgMiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KOzsgV3Jp dGUgYmFzaWMgY29udGVudCB0byBoYXZlIG9yZyBpbnB1dCwgYW5kIGRlZmluZSBhIHN0eWxl IGZpbGUKCih3aXRoLWN1cnJlbnQtYnVmZmVyIGRlbW9fbmFtZV9vcmcgKGluc2VydAoiIytU SVRMRTogRMOpbW9uc3RyYXRpb24KIytDT05URVhUX0VOVjogbXktZW52CiMrTEFOR1VBR0U6 IGZyCgoqIEZvcm1hdGFnZSBkZSB0ZXh0ZQo6UFJPUEVSVElFUzoKOkNVU1RPTV9JRDogc2Vj OmZvcm1hdGFnZSB0ZXh0ZQo6RU5EOgoKUG91ciBtZXR0cmUgZW4gw6l2aWRlbmNlLCBpbCBl c3QgcG9zc2libGUgZGUgKm1ldHRyZSBlbiBncmFzKi4KCklsIGVzdCBwb3NzaWJsZSBhdXNz aSBkZSAvbWV0dHJlIGVuIGl0YWxpcXVlLy4KCiogSW1hZ2VzCjpQUk9QRVJUSUVTOgo6Q1VT VE9NX0lEOiBzZWM6aW1hZ2VzCjpFTkQ6CgpEdSB0ZXh0ZSBhdmFudC4KCiMrQ0FQVElPTjog Q2VjaSBlc3QgdW4gZ2xhY2llci4KCiMrTkFNRTogZmlnOmdsYWNpZXIKIytBVFRSX09SRzog OndpZHRoIDEwMApbWy4vZ2xhY2llci5qcGddXQoKRHUgdGV4dGUgYXByw6hzLgoKKiBMaWVu cyBldCByw6lmw6lyZW5jZXMKOlBST1BFUlRJRVM6CjpDVVNUT01fSUQ6IHNlYzpsaWVuc19l dF9yZWZlcmVuY2VzCjpFTkQ6CgpVbmUgcsOpZsOpcmVuY2Ugw6AgbCdpbWFnZSBbW2ZpZzpn bGFjaWVyXV0gZW4gZXNww6lyYW5jZSBxdWUgY2VsYSBmb25jdGlvbm5lLgoKVW5lIHNlY29u ZCB2ZXJzIGxhIHNlY3Rpb24gW1sjc2VjOmZvcm1hdGFnZSB0ZXh0ZV1dLgoKIytJTkNMVURF OiBcImluY2x1ZGUub3JnXCIKIikpCgooY2xlYW5fYmVmb3JlX2RlbW8gImluY2x1ZGUub3Jn IikKKHdpdGgtY3VycmVudC1idWZmZXIgImluY2x1ZGUub3JnIiAoaW5zZXJ0CiIqIEluY2x1 ZGUKOlBST1BFUlRJRVM6CjpDVVNUT01fSUQ6IHNlYzppbmNsdWRlCjpFTkQ6CgpFdCB2b2lj aSB1bmUgc2Vjb25kZSByw6lmw6lyZW5jZSB2ZXJzIGwnaW1hZ2UgW1tmaWc6Z2xhY2llcl1d LgoiKSkKKHdpdGgtY3VycmVudC1idWZmZXIgImluY2x1ZGUub3JnIgogICh3cml0ZS1maWxl ICJpbmNsdWRlLm9yZyIpKQoKKGNsZWFuX2JlZm9yZV9kZW1vICJteS1lbnYudGV4IikKKHdp dGgtY3VycmVudC1idWZmZXIgIm15LWVudi50ZXgiIChpbnNlcnQKIlxzZXR1cGhlYWQgW3Nl Y3Rpb25dIFtjb2xvcj1kYXJrcmVkLHN0eWxlPVxiZmFdClxzZXR1cHRvbGVyYW5jZSBbdG9s ZXJhbnRdClxzZXR1cGludGVyYWN0aW9uIFtzdGF0ZT1zdGFydF0KXHBsYWNlYm9va21hcmtz IFtjaGFwdGVyLHNlY3Rpb24sc3Vic2VjdGlvbl0gW2NoYXB0ZXIsc2VjdGlvbl0KXHNldHVw aW50ZXJhY3Rpb25zY3JlZW4gW29wdGlvbj1ib29rbWFya10KXHNldHVwd2hpdGVzcGFjZSBb bWVkaXVtXQpcc2V0dXBib2R5Zm9udCBbcGFsYXRpbm8sMTJwdF0KIikpCih3aXRoLWN1cnJl bnQtYnVmZmVyICJteS1lbnYudGV4IgogICh3cml0ZS1maWxlICJteS1lbnYudGV4IikpCgoK OzsgRVRBUEUgMyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KOzsgRGVmaW5lIG91ciBleHBvcnQgYmFja2Vu ZAoKKG9yZy1leHBvcnQtZGVmaW5lLWJhY2tlbmQgJ294LW15Y29udGV4dAogIDsgZm9yIGVh Y2gga2luZCBvZiBpdGVtLCB3ZSBhcmUgZ29pbmcgdG8gYWxsb2NhdGUgYSBzcGVjaWZpYyBm dW5jdGlvbgogICcoKHRlbXBsYXRlICAgLiBveC1teWNvbnRleHQtdGVtcGxhdGUpCiAgICAo aGVhZGxpbmUgICAuIG94LW15Y29udGV4dC1oZWFkbGluZSkKICAgIChzZWN0aW9uICAgIC4g b3gtbXljb250ZXh0LXNlY3Rpb24pCiAgICAocGFyYWdyYXBoICAuIG94LW15Y29udGV4dC1w YXJhZ3JhcGgpCiAgICAocGxhaW4tdGV4dCAuIG94LW15Y29udGV4dC1wbGFpbi10ZXh0KQog ICAgKGJvbGQgICAgICAgLiBveC1teWNvbnRleHQtYm9sZCkKICAgIChpdGFsaWMgICAgIC4g b3gtbXljb250ZXh0LWl0YWxpYykKICAgIChsaW5rICAgICAgIC4gb3gtbXljb250ZXh0LWxp bmspKQogIDsgYW5kIHdlIHdpbGwgbmVlZCB0cCBkZWZpbmUgc3BlY2lmaWMgb3B0aW9uIGF0 IGdsb2JhbCBsZXZlbAogIDpvcHRpb25zLWFsaXN0ICcoKDpjb250ZXh0LWVudiAiQ09OVEVY VF9FTlYiIG5pbCBuaWwgbmV3bGluZSkKICAgICAgICAgICAgICAgICAgICg6bGFuZ3VhZ2Ug IkxBTkdVQUdFIiBuaWwgbmlsIG5ld2xpbmUpKSkKCihkZWZ1biBveC1teWNvbnRleHQtdGVt cGxhdGUgKGNvbnRlbnRzIGluZm8pCiAgKGxldCogKChjb250ZXh0LWVudiAobWFwY29uY2F0 ICMnb3JnLWVsZW1lbnQtbm9ybWFsaXplLXN0cmluZwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAobGlzdCAocGxpc3QtZ2V0IGluZm8gOmNvbnRleHQtZW52KSkpKQogICAg ICAgICAobGFuZ3VhZ2UgKHJlcGxhY2UtcmVnZXhwLWluLXN0cmluZwogICAgICAgICAgICAg ICAgICAgICJcbiQiICIiCiAgICAgICAgICAgICAgICAgICAgKGNhciAobGlzdCAocGxpc3Qt Z2V0IGluZm8gOmxhbmd1YWdlKSkpICkpKQogICAgKGNvbmNhdCAiXFxlbnZpcm9ubWVudCAi IGNvbnRleHQtZW52CiAgICAgICAgICAgICJcXG1haW5sYW5ndWFnZSBbIiBsYW5ndWFnZSAi XVxuXG4iCiAgICAgICAgICAgICJcXHN0YXJ0dGV4dFxuXG4iCiAgICAgICAgICAgIGNvbnRl bnRzCiAgICAgICAgICAgICJcbiIKICAgICAgICAgICAgIlxcc3RvcHRleHQiKSkpCiAgCihk ZWZ1biBveC1teWNvbnRleHQtaGVhZGxpbmUgKGhlYWRsaW5lIGNvbnRlbnRzIGluZm8pCiAg IlRyYW5zY29kZSBhIEhFQURMSU5FIGVsZW1lbnQgZnJvbSBPcmcgdG8gQ29uVGVYdC4KICAg Q09OVEVOVFMgaG9sZHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBIRUFETElORS4gIElORk8gaXMg YSBwbGlzdAogICBob2xkaW5nIGNvbnRleHR1YWwgaW5mb3JtYXRpb24uIgogIGNvbnRlbnRz KQoKKGRlZnVuIG94LW15Y29udGV4dC1zZWN0aW9uIChzZWN0aW9uIGNvbnRlbnRzIGluZm8p CiAgKGxldCoKICAgICAgKChwYXJlbnQgKG9yZy1leHBvcnQtZ2V0LXBhcmVudC1lbGVtZW50 IHNlY3Rpb24pKQogICAgICAgKHNlY3Rpb25fbW9kZSAoc3ltYm9sLW5hbWUgKG9yZy1lbGVt ZW50LXByb3BlcnR5IDptb2RlIHNlY3Rpb24pKSkpCiAgICAocGNhc2Ugc2VjdGlvbl9tb2Rl CiAgICAgICgiZmlyc3Qtc2VjdGlvbiIgKGNvbmNhdCAiJVxuJSBGSVJTVCBTRUNUSU9OXG4l XG4iKSkKICAgICAgKCJzZWN0aW9uIgogICAgICAgKGNvbmNhdCAiJTxTIHNlY3Rpb24gb3Jn ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4iCiAgICAgICAgICAg ICAgICJcXHN0YXJ0c2VjdGlvblxuIgogICAgICAgICAgICAgICAiIFt0aXRsZT17IiAob3Jn LWVsZW1lbnQtcHJvcGVydHkgOnJhdy12YWx1ZSBwYXJlbnQpICJ9LFxuIgogICAgICAgICAg ICAgICAiICByZWZlcmVuY2U9eyIgKG9yZy1lbGVtZW50LXByb3BlcnR5IDpDVVNUT01fSUQg cGFyZW50KSAifSxcbiIKICAgICAgICAgICAgICAgIiBdXG4iCiAgICAgICAgICAgICAgIGNv bnRlbnRzCiAgICAgICAgICAgICAgICJcXHN0b3BzZWN0aW9uXG4iCiAgICAgICAgICAgICAg ICIlPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gc2VjdGlvbiBvcmcg Uz4iKSkpKSkKCihkZWZ1biBveC1teWNvbnRleHQtcGFyYWdyYXBoIChwYXJhZ3JhcGggY29u dGVudHMgaW5mbykKICAoY29uY2F0ICIlPFAgcGFyYWdyYXBoZSBvcmdcbiIgY29udGVudHMg IiVQPiIpKQoKKGRlZnVuIG94LW15Y29udGV4dC1wbGFpbi10ZXh0ICh0ZXh0IGluZm8pCiAg KHdoZW4gKG1lbWJlciAob3JnLWVsZW1lbnQtdHlwZSAob3JnLWVsZW1lbnQtcHJvcGVydHkg OnBhcmVudCB0ZXh0KSkKICAgICAgICAgICAgICAgICcoYm9sZCBpdGFsaWMgcGFyYWdyYXBo IGxpbmspKQogICAgdGV4dCkpCgooZGVmdW4gb3gtbXljb250ZXh0LWJvbGQgKGJvbGQgY29u dGVudHMgaW5mbykKICAoY29uY2F0ICJcXGJvbGR7IiBjb250ZW50cyAifSIpKQoKKGRlZnVu IG94LW15Y29udGV4dC1pdGFsaWMgKGl0YWxpYyBjb250ZW50cyBpbmZvKQogIChjb25jYXQg IlxcaXRhbGljeyIgY29udGVudHMgIn0iKSkKCihkZWZ1biBveC1teWNvbnRleHQtbGluayAo bGluayBjb250ZW50cyBpbmZvKQogIChsZXQqCiAgICAgICgocGFyZW50X2F0dHJfb3JnCiAg ICAgICAgKG9yZy1leHBvcnQtcmVhZC1hdHRyaWJ1dGUgOmF0dHJfb3JnCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKG9yZy1leHBvcnQtZ2V0LXBhcmVudC1lbGVtZW50 IGxpbmspKSkKICAgICAgIChwYXJlbnRfY2FwdGlvbgogICAgICAgIChjYXIgKG9yZy1leHBv cnQtZ2V0LWNhcHRpb24gKG9yZy1leHBvcnQtZ2V0LXBhcmVudC1lbGVtZW50IGxpbmspKSkp CiAgICAgICAocGFyZW50X25hbWUgKG9yZy1lbGVtZW50LXByb3BlcnR5IDpuYW1lCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvcmctZXhwb3J0LWdldC1w YXJlbnQtZWxlbWVudCBsaW5rKSkpCiAgICAgICAoZWxlbV9wcm9wX3R5cGUgIChvcmctZWxl bWVudC1wcm9wZXJ0eSA6dHlwZSBsaW5rKSkKICAgICAgIChlbGVtX3Byb3BfcGF0aCAgKG9y Zy1lbGVtZW50LXByb3BlcnR5IDpwYXRoIGxpbmspKQogICAgICAgKQogICAgKGNvbmNhdAog ICAgIChwY2FzZSBlbGVtX3Byb3BfdHlwZQogICAgICAgKCJjdXN0b20taWQiIChjb25jYXQg IlxcaW5bIiBlbGVtX3Byb3BfcGF0aCAiXSIpKSAgOyBvciBcXGF0e3BhZ2V9W10KICAgICAg ICgiZnV6enkiIChjb25jYXQgIlxcaW5bIiBlbGVtX3Byb3BfcGF0aCAiXSIpKQogICAgICAg KCJmaWxlIiAoY29uY2F0ICJcXHN0YXJ0cGxhY2VmaWd1cmVcbiIKICAgICAgICAgICAgICAg ICAgICAgICAiIFt0aXRsZT17IiBwYXJlbnRfY2FwdGlvbiAifSxcbiIKICAgICAgICAgICAg ICAgICAgICAgICAiICByZWZlcmVuY2U9eyIgcGFyZW50X25hbWUgIn0sXG4iCiAgICAgICAg ICAgICAgICAgICAgICAgIiBdXG4iCiAgICAgICAgICAgICAgICAgICAgICAgIlxcZXh0ZXJu YWxmaWd1cmVbIiBlbGVtX3Byb3BfcGF0aCAiXSIKICAgICAgICAgICAgICAgICAgICAgICAi W3dpZHRoPXsiCiAgICAgICAgICAgICAgICAgICAgICAgKGZvcm1hdCAiJXMiICgvIChzdHJp bmctdG8tbnVtYmVyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo cGxpc3QtZ2V0IHBhcmVudF9hdHRyX29yZyAgOndpZHRoICkpCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDEwMC4wICkpICJcXHRleHR3aWR0aH1dIgogICAgICAg ICAgICAgICAgICAgICAgICJcblxcc3RvcHBsYWNlZmlndXJlIikpKSkpKQoKOzsgRVRBUEUg NCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KOzsgRGVmaW5lIGEgY29tbWFuZCBhbmQgYXBwbHkgdG8gZ2V0 IHRoZSB0ZXggb3V0cHV0IGJ1ZmZlcgoKKGRlZnVuIG94LW15Y29udGV4dC1leHBvcnQgKCkK ICAoaW50ZXJhY3RpdmUpCiAgKG9yZy1leHBvcnQtdG8tYnVmZmVyICdveC1teWNvbnRleHQg IGRlbW9fbmFtZV90ZXgpKQoKKHdpdGgtY3VycmVudC1idWZmZXIgZGVtb19uYW1lX29yZwog IChveC1teWNvbnRleHQtZXhwb3J0KSkKCih3aXRoLWN1cnJlbnQtYnVmZmVyIGRlbW9fbmFt ZV9vcmcKICAod3JpdGUtZmlsZSBkZW1vX25hbWVfb3JnKSkKCih3aXRoLWN1cnJlbnQtYnVm ZmVyIGRlbW9fbmFtZV90ZXgKICAod3JpdGUtZmlsZSBkZW1vX25hbWVfdGV4KSkK --------------KjFZrU2t08AMehyvAXK86HPi--