From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/100725 Path: news.gmane.org!.POSTED!not-for-mail From: "Mikael P. Sundqvist" Newsgroups: gmane.comp.tex.context Subject: Re: Size of fences, factor key Date: Thu, 26 Apr 2018 07:39:45 +0200 Message-ID: References: Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000725b3b056ab9d276" X-Trace: blaine.gmane.org 1524721130 19478 195.159.176.226 (26 Apr 2018 05:38:50 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 26 Apr 2018 05:38:50 +0000 (UTC) Cc: mailing list for ConTeXt users To: Hans Hagen Original-X-From: ntg-context-bounces@ntg.nl Thu Apr 26 07:38:45 2018 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from zapf.boekplan.nl ([5.39.185.232] helo=zapf.ntg.nl) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fBZcD-00050Y-Qg for gctc-ntg-context-518@m.gmane.org; Thu, 26 Apr 2018 07:38:45 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id ED023625691; Thu, 26 Apr 2018 07:40:28 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at zapf.boekplan.nl Original-Received: from zapf.ntg.nl ([127.0.0.1]) by localhost (zapf.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KQvCqiqxbpnh; Thu, 26 Apr 2018 07:40:28 +0200 (CEST) Original-Received: from zapf.ntg.nl (localhost [IPv6:::1]) by zapf.ntg.nl (Postfix) with ESMTP id 2E0ED622EEB; Thu, 26 Apr 2018 07:40:28 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id 0BFE5622EEB for ; Thu, 26 Apr 2018 07:40:28 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at zapf.boekplan.nl Original-Received: from zapf.ntg.nl ([127.0.0.1]) by localhost (zapf.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nXYsOtLcVDER for ; Thu, 26 Apr 2018 07:40:27 +0200 (CEST) Original-Received: from mail-qt0-f177.google.com (mail-qt0-f177.google.com [209.85.216.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by zapf.ntg.nl (Postfix) with ESMTPS id ED71E622EEA for ; Thu, 26 Apr 2018 07:40:16 +0200 (CEST) Original-Received: by mail-qt0-f177.google.com with SMTP id f16-v6so26192765qth.0 for ; Wed, 25 Apr 2018 22:40:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=mI+nDE9fqIHPbSD4CESv0xtaguhJ8ADr8lWNvikpttc=; b=owAuZfnDuSA8lt8TgyHry2sM/XwtnDZPzOqaEuqK92mE3T50jsH6pFKJCjMcM5ylFO vBYgYhlb/71feUr5i2Bk1Dci+FRgL5lkzMptUMmugDf5nesNNlMkWZt/qnGPCHlQXqzA r5r4ExuOVWPzcmzzIfwYqbHnW03eY4oAhBaM2Q6NHJHdY17I7P54Nltmol3rf9g4SRrW gOcI+Anse6cZu8z+xEmkS71jooAHp9WR+oQTEcRTDd6sENDFOjQKl7QDgZj4gsZ5iXKZ xvBVJ6084ilk4V+9t69my/vPA674otn722MVPfIr/a83RFiLgJ8Ej54GtBLd43WL8du3 4JwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=mI+nDE9fqIHPbSD4CESv0xtaguhJ8ADr8lWNvikpttc=; b=OanJncwZ0cIYXMjP7srEnmor+dEIf8tYbNhI9mk4qpzKQG0VYnbbwkzGlVTeJHSYej yTdBhDJzVi6hXaTeMbeuALc9lQtnLaZjsMeiDVK5NDqbIcO39+fsFSwvLvwJ6TF3ArRc APsZNceRzZWFNhaZX4uZnedVE6BKGDEg6TbLPh0bujOhPhrXrrtZH62LNPBpZih36yNW kk44Q7MYEOEuguCQIrCgKYBk65Y4O3SiPIn0kiVNYkZVHGGcLopqLHyYCXkSt8+BmLXB W6n/j9qYxmXg8hNnDSO0qjQABLFToqNv7DfqUmAypfYTd8itwAOtXJm6daEYe77ad0Sl Rw1w== X-Gm-Message-State: ALQs6tAcIxDdl8zjNFXKNyHKiYh9apz7DTNlTWenckxHER8FvladednQ Mzq8zOspN4Y434DvdY9PiYzizqtB+TuOTgfUNAE= X-Google-Smtp-Source: AIpwx4+iwUCsww3DSwjGjF1FGk9Qnu0MbvGYGucUZTLKnGdDvaepKcB21X78D2VFxrVJDLt+I4QC6Iev9NexcaKHyDY= X-Received: by 2002:ac8:870:: with SMTP id x45-v6mr33789213qth.46.1524721215746; Wed, 25 Apr 2018 22:40:15 -0700 (PDT) Original-Received: by 10.237.59.113 with HTTP; Wed, 25 Apr 2018 22:39:45 -0700 (PDT) In-Reply-To: X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.16 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ntg-context-bounces@ntg.nl Original-Sender: "ntg-context" Xref: news.gmane.org gmane.comp.tex.context:100725 Archived-At: --000000000000725b3b056ab9d276 Content-Type: multipart/alternative; boundary="000000000000725b38056ab9d274" --000000000000725b38056ab9d274 Content-Type: text/plain; charset="UTF-8" > > >> > sort of unclear indeed > > > these big things are tricky as in plain tex they depends on font > dimensions and forced scaling but in context we have abit more control over > these sizes > > you can add this to cont-new.mkiv > > \unprotect > > \unexpanded\def\math_fenced_fenced_indeed[#1]#2% > {\iffirstargument\setupcurrentmathfence[#1]\fi > \math_fenced_fenced_common > \edef\p_size{\mathfenceparameter\c!size}% > \ifx\p_size\empty\else > > \attribute\mathsizeattribute\numexpr\bigmathdelimitervariant > *\plushundred+\p_size\relax > \fi > \math_fenced_left > #2% > \math_fenced_right > \stopusemathstyleparameter > \endgroup > \advance\c_math_fenced_nesting\minusone} > > \protect > > and then do > > \setupbodyfont[lucidaot] > > \definemathfence[Set][left="007B,right="007D,command=yes] > > \startTEXpage[offset=1ex] > \startformula > \Set{x\in\mathbb R~:~x^2=1} > \stopformula > \startformula > \Set[size=2]{x\in\mathbb R~:~x^2=1} > \stopformula > \startformula > \Set[size=3]{x\in\mathbb R~:~x^2=1} > \stopformula > \startformula > \Set[size=4]{x\in\mathbb R~:~x^2=1} > \stopformula > \stopTEXpage > Many thanks for your answer, I appreciate it! If you look at the example below (output attached), you see that the version with \bigl and \bigr has a different size than the other ones. So my question boils down to: Is it possible, by using fences, to have the same size as the \big, \Big, \bigg etc would give? If not, is it possible to implement? I think it would make the already very nice fencing system even more usable. The reason is to be able to use this instead of not using fences at all in the few cases where the size from the fencing is not optimal. /Mikael \unprotect \unexpanded\def\math_fenced_fenced_indeed[#1]#2% {\iffirstargument\setupcurrentmathfence[#1]\fi \math_fenced_fenced_common \edef\p_size{\mathfenceparameter\c!size}% \ifx\p_size\empty\else \attribute\mathsizeattribute\numexpr\bigmathdelimitervariant*\plushundred+\p_size\relax \fi \math_fenced_left #2% \math_fenced_right \stopusemathstyleparameter \endgroup \advance\c_math_fenced_nesting\minusone} \protect \setupbodyfont[lucidaot] \definemathfence[Set][left="007B,right="007D,command=yes] \startTEXpage[offset=1ex] \startformula \{x\in\mathbb R~:~x^2=1\}\quad\text{Here the braces are too small} \stopformula \startformula \bigl\{x\in\mathbb R~:~x^2=1\bigr\}\quad\text{I like this size} \stopformula \startformula \Set{x\in\mathbb R~:~x^2=1}\quad\text{Here the braces are too big} \stopformula \startformula \Set[size=2]{x\in\mathbb R~:~x^2=1}\quad\text{Here the braces are too big} \stopformula \stopTEXpage --000000000000725b38056ab9d274 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
=


sort of unclear indeed


these big things are tricky as in plain tex they depends on font dimensions= and forced scaling but in context we have abit more control over these siz= es

you can add this to cont-new.mkiv

\unprotect

\unexpanded\def\math_fenced_fenced_indeed[#1]#2%
=C2=A0 {\iffirstargument\setupcurrentmathfence[#1]\fi
=C2=A0 =C2=A0\math_fenced_fenced_common
=C2=A0 =C2=A0\edef\p_size{\mathfenceparameter\c!size}%
=C2=A0 =C2=A0\ifx\p_size\empty\else

\attribute\mathsizeattribute\numexpr\bigmathdelimitervariant*\plu= shundred+\p_size\relax
=C2=A0 =C2=A0\fi
=C2=A0 =C2=A0\math_fenced_left
=C2=A0 =C2=A0#2%
=C2=A0 =C2=A0\math_fenced_right
=C2=A0 =C2=A0\stopusemathstyleparameter
=C2=A0 =C2=A0\endgroup
=C2=A0 =C2=A0\advance\c_math_fenced_nesting\minusone}

\protect

and then do

\setupbodyfont[lucidaot]

\definemathfence[Set][left=3D"007B,right=3D"007D,command=3Dy= es]

\startTEXpage[offset=3D1ex]
=C2=A0 =C2=A0 \startformula
=C2=A0 =C2=A0 =C2=A0 =C2=A0 \Set{x\in\mathbb R~:~x^2=3D1}
=C2=A0 =C2=A0 \stopformula
=C2=A0 =C2=A0 \startformula
=C2=A0 =C2=A0 =C2=A0 =C2=A0 \Set[size=3D2]{x\in\mathbb R~:~x^2=3D1}
=C2=A0 =C2=A0 \stopformula
=C2=A0 =C2=A0 \startformula
=C2=A0 =C2=A0 =C2=A0 =C2=A0 \Set[size=3D3]{x\in\mathbb R~:~x^2=3D1}
=C2=A0 =C2=A0 \stopformula
=C2=A0 =C2=A0 \startformula
=C2=A0 =C2=A0 =C2=A0 =C2=A0 \Set[size=3D4]{x\in\mathbb R~:~x^2=3D1}
=C2=A0 =C2=A0 \stopformula
\stopTEXpage


Many thanks= for your answer, I appreciate it!

If you look at = the example below (output attached), you see that the version with \bigl an= d \bigr has a different size than the other ones.=C2=A0

So my question boils down to: Is it possible, by using fences, to hav= e the same size as the \big, \Big, \bigg etc would give?=C2=A0
If not, is it possible to implement? I think it would make the= already very nice fencing system even more usable. The reason is to be abl= e to use this instead of not using fences at all in the few cases where the= size from the fencing is not optimal.

/Mikael


\unprotect

\unexpanded\def\math_fenced_fenced_indeed[#1]#2%
=C2=A0 {\iffi= rstargument\setupcurrentmathfence[#1]\fi
=C2=A0 =C2=A0\math_fence= d_fenced_common
=C2=A0 =C2=A0\edef\p_size{\mathfenceparameter\c!s= ize}%
=C2=A0 =C2=A0\ifx\p_size\empty\else

\attribute\mathsizeattribute\numexpr\bigmathdelimitervariant*\plushundred= +\p_size\relax
=C2=A0 =C2=A0\fi
=C2=A0 =C2=A0\math_fenc= ed_left
=C2=A0 =C2=A0#2%
=C2=A0 =C2=A0\math_fenced_righ= t
=C2=A0 =C2=A0\stopusemathstyleparameter
=C2=A0 =C2=A0= \endgroup
=C2=A0 =C2=A0\advance\c_math_fenced_nesting\minusone}

\protect

\setupbodyfont[lu= cidaot]

\definemathfence[Set][left=3D"007B,ri= ght=3D"007D,command=3Dyes]

\startTEXpage[offs= et=3D1ex]
=C2=A0 =C2=A0 \startformula
=C2=A0 =C2=A0 =C2= =A0 =C2=A0 \{x\in\mathbb R~:~x^2=3D1\}\quad\text{Here the braces are too sm= all}
=C2=A0 =C2=A0 \stopformula
=C2=A0 =C2=A0 \startfor= mula
=C2=A0 =C2=A0 =C2=A0 =C2=A0 \bigl\{x\in\mathbb R~:~x^2=3D1\b= igr\}\quad\text{I like this size}
=C2=A0 =C2=A0 \stopformula
=C2=A0 =C2=A0 \startformula
=C2=A0 =C2=A0 =C2=A0 =C2=A0 \Se= t{x\in\mathbb R~:~x^2=3D1}\quad\text{Here the braces are too big}
=C2=A0 =C2=A0 \stopformula
=C2=A0 =C2=A0 \startformula
=C2=A0 =C2=A0 =C2=A0 =C2=A0 \Set[size=3D2]{x\in\mathbb R~:~x^2=3D1}\quad\t= ext{Here the braces are too big}
=C2=A0 =C2=A0 \stopformula
=
\stopTEXpage

=C2=A0
--000000000000725b38056ab9d274-- --000000000000725b3b056ab9d276 Content-Type: application/pdf; name="ctx-example36.pdf" Content-Disposition: attachment; filename="ctx-example36.pdf" Content-Transfer-Encoding: base64 X-Attachment-Id: f_jgg3m2h50 JVBERi0xLjcKJdDUxdgKOSAwIG9iago8PC9MZW5ndGggNDM2ICAgICAgIC9GaWx0ZXIvRmxhdGVE ZWNvZGU+PgpzdHJlYW0KeF7FlMlu4zAMQO/5Cv1AOFwlCggCJE1aYM6+DXptT/3/aynFNlKnGRfF LEAcySLF7ZHG9JowPW1wXI/D5sejJiKoZpQ9DS+JQgPjP1cwqhJCA6xsJQ1v6dcO0R7QDr7fcik7 pMdT23nsCu235hwadGw72nW95+FnOJHkINkz8bUPkgKlOIUXRiDCWicvJOPNO+GRZiheiW4DpPMY HIZVtPNoqGl+kie5gRf+xA5XRM1hQdq63wpKS9/irUvaicaJhrzrhDfV8Y7O0hbDbKHpNwvxi2e2 GdpRLtTzaOUU62mlAKSAUTBO7uDhW8fSVcr95gSylZbFSLuiZJxI/jGKzhCVsJqqgJtq9NGlVVYh VgIhi95ahIbXDD9kw8TAGcPZTdrl96BZEFRU6cYZHyYQ2gp/iOfhGvCMPCQ2g7WGup0cu+6lz+90 a9FA0ApjFYjNJwSV/N4wIebojz5afaAuu9aOa0OlAibsmrICqfLXZ8oYTMV5GeYHHFiproxUVcjm EcEiXfx3I9WGspOcvkBrZDgDiZWpWH+XjBCQaXwLvzgnM5hFlN8Gs7Tz38Cch807+wBbZQplbmRz dHJlYW0KZW5kb2JqCjE1IDAgb2JqCjw8L1N1YnR5cGUgL1hNTCAvVHlwZSAvTWV0YWRhdGEKL0xl bmd0aCAyMDIwICAgICAgPj4Kc3RyZWFtCjw/eHBhY2tldCBiZWdpbj0i77u/77u/IiBpZD0iVzVN ME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+PHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRh LyI+PHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1z eW50YXgtbnMjIj48cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczpkYz0iaHR0cDov L3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iPjxkYzpmb3JtYXQ+YXBwbGljYXRpb24vcGRmPC9k Yzpmb3JtYXQ+PGRjOmNyZWF0b3I+PHJkZjpTZXE+PHJkZjpsaSB4bWw6bGFuZz0ieC1kZWZhdWx0 Ii8+PC9yZGY6U2VxPjwvZGM6Y3JlYXRvcj48ZGM6ZGVzY3JpcHRpb24+PHJkZjpBbHQ+PHJkZjps aSB4bWw6bGFuZz0ieC1kZWZhdWx0Ii8+PC9yZGY6QWx0PjwvZGM6ZGVzY3JpcHRpb24+PGRjOnRp dGxlPjxyZGY6QWx0PjxyZGY6bGkgeG1sOmxhbmc9IngtZGVmYXVsdCI+Y3R4LWV4YW1wbGUzNjwv cmRmOmxpPjwvcmRmOkFsdD48L2RjOnRpdGxlPjwvcmRmOkRlc2NyaXB0aW9uPjxyZGY6RGVzY3Jp cHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnBkZng9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGRmeC8x LjMvIj48cGRmeDpJRD5jdHgtZXhhbXBsZTM2PC9wZGZ4OklEPjxwZGZ4OkNvblRlWHQuSm9ibmFt ZT5jdHgtZXhhbXBsZTM2PC9wZGZ4OkNvblRlWHQuSm9ibmFtZT48cGRmeDpDb25UZVh0LlRpbWU+ MjAxOC0wNC0yNiAwNzoyOTwvcGRmeDpDb25UZVh0LlRpbWU+PHBkZng6Q29uVGVYdC5Vcmw+d3d3 LnByYWdtYS1hZGUuY29tPC9wZGZ4OkNvblRlWHQuVXJsPjxwZGZ4OkNvblRlWHQuU3VwcG9ydD5j b250ZXh0Z2FyZGVuLm5ldDwvcGRmeDpDb25UZVh0LlN1cHBvcnQ+PHBkZng6Q29uVGVYdC5WZXJz aW9uPjIwMTguMDQuMTkgMTU6NTM8L3BkZng6Q29uVGVYdC5WZXJzaW9uPjxwZGZ4OlRlWC5TdXBw b3J0PnR1Zy5vcmc8L3BkZng6VGVYLlN1cHBvcnQ+PHBkZng6THVhVGVYLlZlcnNpb24+MS4wNzwv cGRmeDpMdWFUZVguVmVyc2lvbj48cGRmeDpMdWFUZVguRnVuY3Rpb25hbGl0eT42NjYxPC9wZGZ4 Okx1YVRlWC5GdW5jdGlvbmFsaXR5PjxwZGZ4Okx1YVRlWC5MdWFWZXJzaW9uPjUuMzwvcGRmeDpM dWFUZVguTHVhVmVyc2lvbj48cGRmeDpMdWFUZVguUGxhdGZvcm0+bGludXgtNjQ8L3BkZng6THVh VGVYLlBsYXRmb3JtPjwvcmRmOkRlc2NyaXB0aW9uPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0 PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyI+PHhtcDpDcmVhdGVE YXRlPjIwMTgtMDQtMjZUMDc6Mjk6MDMrMDI6MDA8L3htcDpDcmVhdGVEYXRlPjx4bXA6Q3JlYXRv clRvb2w+THVhVGVYIDEuMDcgNjY2MSArIENvblRlWHQgTWtJViAyMDE4LjA0LjE5IDE1OjUzPC94 bXA6Q3JlYXRvclRvb2w+PHhtcDpNb2RpZnlEYXRlPjIwMTgtMDQtMjZUMDc6Mjk6MDMrMDI6MDA8 L3htcDpNb2RpZnlEYXRlPjx4bXA6TWV0YWRhdGFEYXRlPjIwMTgtMDQtMjZUMDc6Mjk6MDMrMDI6 MDA8L3htcDpNZXRhZGF0YURhdGU+PC9yZGY6RGVzY3JpcHRpb24+PHJkZjpEZXNjcmlwdGlvbiBy ZGY6YWJvdXQ9IiIgeG1sbnM6cGRmPSJodHRwOi8vbnMuYWRvYmUuY29tL3BkZi8xLjMvIj48cGRm OktleXdvcmRzLz48cGRmOlByb2R1Y2VyPkx1YVRlWC0xLjA3PC9wZGY6UHJvZHVjZXI+PHBkZjpU cmFwcGVkPkZhbHNlPC9wZGY6VHJhcHBlZD48L3JkZjpEZXNjcmlwdGlvbj48cmRmOkRlc2NyaXB0 aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4w L21tLyI+PHhtcE1NOkRvY3VtZW50SUQ+dXVpZDoxYmYzZjhjOC00M2EzLWE3ZGItODE1ZC1mMzA5 YjdmZWZjMWY8L3htcE1NOkRvY3VtZW50SUQ+PHhtcE1NOkluc3RhbmNlSUQ+dXVpZDoxY2MxOTMz Ni00ZmVkLTkwMTQtOWE5OC04YWU4YWNjMDZhMTQ8L3htcE1NOkluc3RhbmNlSUQ+PC9yZGY6RGVz Y3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPjw/eHBhY2tldCBlbmQ9InciPz4KZW5kc3Ry ZWFtCmVuZG9iagoxNyAwIG9iago8PC9MZW5ndGggMTggICAgICAgIC9GaWx0ZXIvRmxhdGVEZWNv ZGU+PgpzdHJlYW0KeF5jYACCBAYGq3dzBAAHpgI1CmVuZHN0cmVhbQplbmRvYmoKMTggMCBvYmoK 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 zj52omefOK+HPFy89OESqbGF62ZxQkuAFZIMlhtksadJFPqWMW+jeKFbvKhvUV+vWDz9s2mvePG/ AcINaFgKZW5kc3RyZWFtCmVuZG9iagoyMCAwIG9iago8PC9MZW5ndGggNDQ3ICAgICAgIC9GaWx0 ZXIvRmxhdGVEZWNvZGU+PgpzdHJlYW0KeF59k81q6zAQhfd+CnURaBeu5cRO2hAMidNeTH9SmnAp 3TnSOBXEkpHtRd7+jjRxCyVcg8GfZjRz5kgeXb1tw6U0ewgnt5y9Q2t6KyDMX8omGI3WRvQ16O4V QIIcou2cvVkjttCx67xYF1p1N5hcaHHsJQxZl5NWcFD6J8X1Ydc7+MCO+dPnn/C5F0qWK6sOX91m F3JXeKe6I8z/m8awBLtYgvkSf8G2yug5i28557jwoGVuajdbG0TnIVg0jFUpLe3ZC7Z3koN4zKQS 3Zn8mqjRJLd5e2o7qAtdmWCxYNE7BtvOnrzimyDaWAlW6QO6dWlIzNj2TXMEp4bxIMuYhAoLozev ZQ0scv4UEqOqO1026mfH7tQAQ61YISaxwkhom1KALfUBggUawDO2eMQnC0DLX3FOu/YVpWPC8BnP hpD4Kq0rNL7HQpwnd5mnJdG9p2TsaRoTTYjGRAnRhGhKlBLdEc2IqMOUOiTUYXrukBOtKLYmyoke iNaeUjcwEg7siLTMSEtKWmakJU2JEqIV0dIbta/83M4yd/Lf5yN6a/Fw/PXwp+bcVxq+b1BjGrfL v/7qDT+Ao81j8A9xtghwCmVuZHN0cmVhbQplbmRvYmoKMjMgMCBvYmoKPDwvTGVuZ3RoIDExICAg ICAgICAvRmlsdGVyL0ZsYXRlRGVjb2RlPj4Kc3RyZWFtCnheY2AQAAAAEwARCmVuZHN0cmVhbQpl bmRvYmoKMjQgMCBvYmoKPDwvU3VidHlwZS9DSURGb250VHlwZTBDL0xlbmd0aCA0MTggICAgICAg L0ZpbHRlci9GbGF0ZURlY29kZT4+CnN0cmVhbQp4XmNkYGFhYGRklPL0CgwMc9L2KU3OTEl0KspM zyjxTSzJ8A8Bydr/kP+h0M0j90OG4Ycs4w85ph9yzD8kWP4k/9spwy0vwxXNKsvAwPCFH0T+F5zP owRkMHbxqID433lUGdiAFsgnlde04LTFUM/CwNA5v6ASbLOCRrKmgqGlpZGOgpGBoZmCU2Z6ak5+ uYKagkd+Tm5qsYJnXrKegmNOjgJYebFCUWpxalFZaooexP0KEA8ogHyg4B/imJKflOqZkppXkllS CXQSgzAzAyOIZmJgYmSUaPudtVfsh8qPlX9U2Pb+KRf94fr9wB9Xdj7FH3o/tot2F7blt5RWRmcn G1tyRESxpmaUFpZmlGU0lleGcUT/cL7/+wv7xJ0T5y5at3zr0sVnd3Ic3cz66eKmY913u7+z6d35 Ld4d1O1W7ZHP8Vti93T2/ks9/ROn9U+cNHHqxJVz109b3327+4B3twYHHyicBX5I86iBAk0dFIDz hH5+F/kZJ1o598ey6d89566czvY7cTq7nFdljj4P50Qerq1cW1fy8HzkBgC3j6DeCmVuZHN0cmVh bQplbmRvYmoKMjYgMCBvYmoKPDwvTGVuZ3RoIDM2MiAgICAgICAvRmlsdGVyL0ZsYXRlRGVjb2Rl Pj4Kc3RyZWFtCnhehZJPj4IwEMXv/RSzBxM9IEVvhpisuiZs1r8Ys1doB2wiLSnl4LfftoImmzVL QkJn3vx482Dwtk+Dd65yDKZjCkdsVKsZBstNVpPBYKVYW6E0W0SOvO82M9hrxVI0MFwmq0QKM7Li RLJry7FX/S1aYCnkU+LeA8MTfgfJ5+FwXgRfLRM8W2hRXswmM5fdKaAOfhLmirN/pWBR8BIFHnVG 3QglZxCNKaW28CH5UlVuz4aE3UIQ9isWQnLd5QK5s0+iCXDBTHfyNVbZwNxwemsMVoksFIljCI+2 2Rh9885HJNxpjlrIEoYvXVpV2tb1FZ0joGQ+B46FhdustlmFEPq8uO0Kc3sd3HPqdKsRrGdLie6m meLY1BlDnckSSWyDoHOI1/aaE5T8V5/ep/LiLreC/rHj5QW7ZNpxoqnlUDqdeE5Xd0QX0GMF1mpt /fsU/WLOnJD4CLpWtZv3t/9C/T/jTrs1+QEa6uReCmVuZHN0cmVhbQplbmRvYmoKMjkgMCBvYmoK PDwvTGVuZ3RoIDM2ICAgICAgICAvRmlsdGVyL0ZsYXRlRGVjb2RlPj4Kc3RyZWFtCnheY2BQEGKA AK4GKAM35YAuxUJQCy0UEHYoFW1lPgAAShkCRAplbmRzdHJlYW0KZW5kb2JqCjMwIDAgb2JqCjw8 L1N1YnR5cGUvQ0lERm9udFR5cGUwQy9MZW5ndGggMTgzMiAgICAgIC9GaWx0ZXIvRmxhdGVEZWNv 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 OGalwJoKn7iRE1mqAm1UlgIMqiaMFhYsDiwBMERZJZ4FkybpyIvMCgkWrzOjA85ToQkTJFiCBIsB dfRPqMmJfmzGdbloq7rz6SKfIfrnJ+//evPqbDkui/y4Liff2g9DPpjmk4aZDnZMwe8ZpL2nUSNS WwQCvxF/3YwpVs5JfpIv3kZiZk5pToqI0pNB89M2n5bj1/PJNDLBr9o4+8K851/X+FSLTs2gnEYq my6uJ6d9hBLVeZ+FrmAIyK+W1y290Ingf8zHVVHOJ/y0gMqyveu95cd5Ezvor71bmVfkUApQk6HW oXTEh9XneQlpEdX6mGJYR4wr/U/oehh3umTk35906TaO3jWIyen8pkKRXcZJ2bT1Hdt/XVTX8SX/ UBexhntsf+PfSwRgsZjGGUVYHOG3l8mAcvCJfUbCT999+vTl+EHCz/P22+6k48ajHXjjmLLp7qyb p7Me7I6sK7OddbV19/5T1ne7+FPmuwJ7kPkuL6uL/7PyX2f+kZA+uHXURlfZR1v9ndn3yL7DdVcu U9YkYaRF5q1FnwjoKJJIwWw2NtNoFX6kbciclyiaVITMBw24NMZnDpx2pLRC41Fdl+pWK9BRVusz yuzsYvDmw9nvL7NnNJedZaZX7XvdXFR3FXdl+hnNZbeLP5YZ5uEPZabXU+PflNkjIX1YZhjH6zK7 76b/v8lsD+2GYWwvaU7y92XRZJ0emncb0EmOrl9NugnfrKcpwyxv8wIUTG9iYB35LL+O04YdHjJ+ sZw13RinlyvG+1jR49jREQY4lg5/Tg2af27iRTXH5kusm7KaM45p2BmwR18Uw/i1Td5V13PMOLY/ bm978TafoWtq+5JsXwGokVZ1CwB9g9y2kxzddp7MY7sFGpYkAt8vvidMT6E/uAMVtgCf6ynb//79 e7Ko88ks7+VFTMbVbAuxsbGTkuAG0RxND1JNmDrmLRzo5y3U9A8IIozChVZB6FdCvRDixQZX1ezw Jt7cCGHGQrhUoDcLkRo8sU+9EEoIoXGmIp60d+szi/3mn+igqevV0wBoIdOCZ1uWg9yOXoAGrAmg Q0anA0snH7I06d3oIx7a0znwG3s07NM5/umpkcrT/s95QWqfCgO+sorlONZs/2yZI4k9mQiH8GB7 n852OUmqekLHZYvPjnXMLAwmnxzZSz7BFtpTDC3eESphEVc618BqCzuHdb5YxILxQT5t4h5K7G8S pzkcCmVuZHN0cmVhbQplbmRvYmoKMzYgMCBvYmoKPDwvVHlwZS9YUmVmL0luZGV4WzAgMzddL1Np emUgMzcvV1sxIDIgMV0vUm9vdCAzNCAwIFIvSW5mbyAzNSAwIFIvSURbPEJCQzJBRTU5NDgzRUM4 OUY3REJBOUZEOUYxMkQwNEVFPiA8QkJDMkFFNTk0ODNFQzg5RjdEQkE5RkQ5RjEyRDA0RUU+XS9M ZW5ndGggMTA0ICAgICAgIC9GaWx0ZXIvRmxhdGVEZWNvZGU+PgpzdHJlYW0KeF4Vy7sOQFAQhOGZ 435wiIgoRaPQq7QKr6XwKhrvyGzx5d/dZAF+gJNIYkkkFXwOgQKigVpJLrEEzjvogt0d/Qn6x+aI 3WRNJGW/gv1le8bhthbiOep3fG0vOW3WWhppuRz4Afq+DbIKZW5kc3RyZWFtCmVuZG9iagpzdGFy dHhyZWYKMTAwNTMKJSVFT0YK --000000000000725b3b056ab9d276 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSWYgeW91ciBxdWVzdGlvbiBpcyBvZiBpbnRlcmVz dCB0byBvdGhlcnMgYXMgd2VsbCwgcGxlYXNlIGFkZCBhbiBlbnRyeSB0byB0aGUgV2lraSEKCm1h aWxsaXN0IDogbnRnLWNvbnRleHRAbnRnLm5sIC8gaHR0cDovL3d3dy5udGcubmwvbWFpbG1hbi9s aXN0aW5mby9udGctY29udGV4dAp3ZWJwYWdlICA6IGh0dHA6Ly93d3cucHJhZ21hLWFkZS5ubCAv IGh0dHA6Ly9jb250ZXh0LmFhbmhldC5uZXQKYXJjaGl2ZSAgOiBodHRwczovL2JpdGJ1Y2tldC5v cmcvcGhnL2NvbnRleHQtbWlycm9yL2NvbW1pdHMvCndpa2kgICAgIDogaHR0cDovL2NvbnRleHRn YXJkZW4ubmV0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f --000000000000725b3b056ab9d276--