<?xml version="1.0" encoding="UTF-8"?>
<?latexml class="article"?>
<?latexml package="etoolbox"?>
<?latexml RelaxNGSchema="LaTeXML"?>
<document xmlns="http://dlmf.nist.gov/LaTeXML">
<resource src="LaTeXML.css" type="text/css"/>
<resource src="ltx-article.css" type="text/css"/>
<para xml:id="p1">
<p>hello.world.</p>
</para>
<section inlist="toc" xml:id="S1">
<tags>
<tag>1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">§1</tag>
</tags>
<title><tag close=" ">1</tag>User commands</title>
<para xml:id="S1.p1">
<p><text font="italic">basic</text></p>
</para>
<para xml:id="S1.p2">
<p>4</p>
</para>
<para xml:id="S1.p3">
<p>72.26999pt</p>
</para>
<para xml:id="S1.p4">
<p>722.7pt</p>
</para>
</section>
<section inlist="toc" xml:id="S2">
<tags>
<tag>2</tag>
<tag role="refnum">2</tag>
<tag role="typerefnum">§2</tag>
</tags>
<title><tag close=" ">2</tag>Hooks</title>
<para xml:id="S2.p1">
<p>Before Begin stuff(outside).At Begin stuff(inside).Begin stuff.
This is Stuff!
At End stuff(inside).End stuff.After End stuff(outside).</p>
</para>
<para xml:id="S2.p2">
<p>Before Begin equation(outside).At Begin equation(inside).</p>
<equation xml:id="S2.E1">
<tags>
<tag>(1)</tag>
<tag role="refnum">1</tag>
</tags>
<Math mode="display" tex="a=b\textrm{ At End equation(inside).}" text="a = b * [ At End equation(inside).]" xml:id="S2.E1.m1">
<XMath>
<XMApp>
<XMTok meaning="equals" role="RELOP">=</XMTok>
<XMTok font="italic" role="UNKNOWN">a</XMTok>
<XMApp>
<XMTok meaning="times" role="MULOP"></XMTok>
<XMTok font="italic" role="UNKNOWN">b</XMTok>
<XMText> At End equation(inside).</XMText>
</XMApp>
</XMApp>
</XMath>
</Math>
</equation>
<p>After End equation(outside).</p>
</para>
<para xml:id="S2.p3">
<p>Before Begin verbatim(outside).Begin verbatim(inside):Some Code.</p>
<verbatim font="typewriter">
\some \code
End verbatim(inside): Some Code.</verbatim>
</para>
</section>
<section inlist="toc" xml:id="S3">
<tags>
<tag>3</tag>
<tag role="refnum">3</tag>
<tag role="typerefnum">§3</tag>
</tags>
<title><tag close=" ">3</tag>Author commands</title>
<subsection inlist="toc" xml:id="S3.SS1">
<tags>
<tag>3.1</tag>
<tag role="refnum">3.1</tag>
<tag role="typerefnum">§3.1</tag>
</tags>
<title><tag close=" ">3.1</tag>Definitions</title>
<subsubsection inlist="toc" xml:id="S3.SS1.SSS1">
<tags>
<tag>3.1.1</tag>
<tag role="refnum">3.1.1</tag>
<tag role="typerefnum">§3.1.1</tag>
</tags>
<title><tag close=" ">3.1.1</tag>Macro definitions</title>
<para xml:id="S3.SS1.SSS1.p1">
<p>path of PB</p>
</para>
<para xml:id="S3.SS1.SSS1.p2">
<p>path of UF</p>
</para>
<para xml:id="S3.SS1.SSS1.p3">
<p>path of UF</p>
</para>
<para xml:id="S3.SS1.SSS1.p4">
<p>orange= orange= orange= orange</p>
</para>
<para xml:id="S3.SS1.SSS1.p5">
<p>deftestone is defined . After undef, deftestone is undefined.</p>
</para>
<para xml:id="S3.SS1.SSS1.p6">
<p>deftesttwo is defined . After csundef,
deftesttwo is undefined.</p>
</para>
<para xml:id="S3.SS1.SSS1.p7">
<p>macro:-¿orange</p>
</para>
</subsubsection>
<subsubsection inlist="toc" xml:id="S3.SS1.SSS2">
<tags>
<tag>3.1.2</tag>
<tag role="refnum">3.1.2</tag>
<tag role="typerefnum">§3.1.2</tag>
</tags>
<title><tag close=" ">3.1.2</tag>Arithmetic definitions</title>
<para xml:id="S3.SS1.SSS2.p1">
<p>2 + 4 * 8 = 34</p>
</para>
<para xml:id="S3.SS1.SSS2.p2">
<p>3 + 5 * 7 = 38</p>
</para>
<para xml:id="S3.SS1.SSS2.p3">
<p>4 + 6 * 8 = 52</p>
</para>
<para xml:id="S3.SS1.SSS2.p4">
<p>1pt + 2em = 21.00003pt</p>
</para>
<para xml:id="S3.SS1.SSS2.p5">
<p>3pt + 1em = 13.00002pt</p>
</para>
<para xml:id="S3.SS1.SSS2.p6">
<p>4pt + 0.5em = 9.0pt</p>
</para>
<para xml:id="S3.SS1.SSS2.p7">
<p>10pt plus 2pt minus 3pt = 10.0pt plus 2.0pt minus 3.0pt</p>
</para>
<para xml:id="S3.SS1.SSS2.p8">
<p>4pt minus 1pt = 4.0pt minus 1.0pt</p>
</para>
<para xml:id="S3.SS1.SSS2.p9">
<p>5mu = 5.0mu</p>
</para>
</subsubsection>
</subsection>
<subsection inlist="toc" xml:id="S3.SS2">
<tags>
<tag>3.2</tag>
<tag role="refnum">3.2</tag>
<tag role="typerefnum">§3.2</tag>
</tags>
<title><tag close=" ">3.2</tag>Expansion control</title>
<para xml:id="S3.SS2.p1">
<p>full expansion: macro:-¿first</p>
</para>
<para xml:id="S3.SS2.p2">
<p>expand once: macro:-¿“lvltwo</p>
</para>
<para xml:id="S3.SS2.p3">
<p>csexpandonce: macro:-¿“lvlone</p>
</para>
</subsection>
<subsection inlist="toc" xml:id="S3.SS3">
<tags>
<tag>3.3</tag>
<tag role="refnum">3.3</tag>
<tag role="typerefnum">§3.3</tag>
</tags>
<title><tag close=" ">3.3</tag>Hook management</title>
<para xml:id="S3.SS3.p1">
<p>x;
xAB;
xABYZ.</p>
</para>
<para xml:id="S3.SS3.p2">
<p>ABxYZ.</p>
</para>
<para xml:id="S3.SS3.p3">
<p>xZ.</p>
</para>
<para xml:id="S3.SS3.p4">
<p>pre-x.</p>
</para>
</subsection>
<subsection inlist="toc" xml:id="S3.SS4">
<tags>
<tag>3.4</tag>
<tag role="refnum">3.4</tag>
<tag role="typerefnum">§3.4</tag>
</tags>
<title><tag close=" ">3.4</tag>Patching</title>
<para xml:id="S3.SS4.p1">
<p>patching: ok</p>
</para>
<para xml:id="S3.SS4.p2">
<p>example patched here</p>
</para>
<para xml:id="S3.SS4.p3">
<p>relax is not patchable</p>
</para>
<para xml:id="S3.SS4.p4">
<p>begin is patchable</p>
</para>
<para xml:id="S3.SS4.p5">
<p>first and second</p>
</para>
<para xml:id="S3.SS4.p6">
<p>appending to paramacro: ok<break/>first and second. Post</p>
</para>
<para xml:id="S3.SS4.p7">
<p>prepending to paramacro: ok<break/>Pre. first and second. Post</p>
</para>
</subsection>
<subsection inlist="toc" xml:id="S3.SS5">
<tags>
<tag>3.5</tag>
<tag role="refnum">3.5</tag>
<tag role="typerefnum">§3.5</tag>
</tags>
<title><tag close=" ">3.5</tag>Boolean Flags</title>
<para xml:id="S3.SS5.p1">
<p>boolvar is false.</p>
</para>
<para xml:id="S3.SS5.p2">
<p>set to true. boolvar is true.</p>
</para>
<para xml:id="S3.SS5.p3">
<p>set to false. boolvar is false.</p>
</para>
<para xml:id="S3.SS5.p4">
<p>set to true. boolvar is true.</p>
</para>
<para xml:id="S3.SS5.p5">
<p>set to false. boolvar is false.</p>
</para>
<para xml:id="S3.SS5.p6">
<p>ltxbool is false</p>
</para>
<para xml:id="S3.SS5.p7">
<p>set to true. ltxbool is true</p>
</para>
<para xml:id="S3.SS5.p8">
<p>set to false. ltxbool is false</p>
</para>
<para xml:id="S3.SS5.p9">
<p>set to true. ltxbool is true</p>
</para>
<para xml:id="S3.SS5.p10">
<p>set to false. ltxbool is false</p>
</para>
</subsection>
<subsection inlist="toc" xml:id="S3.SS6">
<tags>
<tag>3.6</tag>
<tag role="refnum">3.6</tag>
<tag role="typerefnum">§3.6</tag>
</tags>
<title><tag close=" ">3.6</tag>Generic Tests</title>
<para xml:id="S3.SS6.p1">
<p>noise is not defined.</p>
</para>
<para xml:id="S3.SS6.p2">
<p>begin is defined.</p>
</para>
<para xml:id="S3.SS6.p3">
<p>relax is defined.</p>
</para>
<para xml:id="S3.SS6.p4">
<p>relax is ifundef: true</p>
</para>
<para xml:id="S3.SS6.p5">
<p>relax is ifcsundef: true</p>
</para>
<para xml:id="S3.SS6.p6">
<p>nosuchmacro is not a macro</p>
</para>
<para xml:id="S3.SS6.p7">
<p>relax is not a macro</p>
</para>
<para xml:id="S3.SS6.p8">
<p>begin is a macro</p>
</para>
<para xml:id="S3.SS6.p9">
<p>nobeginning is un defined.</p>
</para>
<para xml:id="S3.SS6.p10">
<p>begin is defined.</p>
</para>
<para xml:id="S3.SS6.p11">
<p>relax is not defparam</p>
</para>
<para xml:id="S3.SS6.p12">
<p>begin is defparam</p>
</para>
<para xml:id="S3.SS6.p13">
<p>apptocmd is defprotected</p>
</para>
<para xml:id="S3.SS6.p14">
<p>ifdefprotected is defprotected</p>
</para>
<para xml:id="S3.SS6.p15">
<p>relax is not defprotected</p>
</para>
<para xml:id="S3.SS6.p16">
<p>begin is not defprotected</p>
</para>
<para xml:id="S3.SS6.p17">
<p>prefix test begin: false</p>
</para>
<para xml:id="S3.SS6.p18">
<p>prefix test noise: false</p>
</para>
<para xml:id="S3.SS6.p19">
<p>prefix test newrobustcmd: false</p>
</para>
<para xml:id="S3.SS6.p20">
<p>prefix test newrobustcmd: false</p>
</para>
<para xml:id="S3.SS6.p21">
<p>ifcsltxprotect relax: false</p>
</para>
<para xml:id="S3.SS6.p22">
<p>ifcsltxprotect myltxrobust: true</p>
</para>
<para xml:id="S3.SS6.p23">
<p>ifdefempty myempty: true</p>
</para>
<para xml:id="S3.SS6.p24">
<p>ifdefempty myrelax: false</p>
</para>
<para xml:id="S3.SS6.p25">
<p>ifcsvoid myempty: true</p>
</para>
<para xml:id="S3.SS6.p26">
<p>ifcsvoid myrelax: false</p>
</para>
<para xml:id="S3.SS6.p27">
<p>ifcsvoid letrelax: true</p>
</para>
<para xml:id="S3.SS6.p28">
<p>ifcsvoid begin: false</p>
</para>
<para xml:id="S3.SS6.p29">
<p>ifdefequal myempty-myrelax: false</p>
</para>
<para xml:id="S3.SS6.p30">
<p>ifdefequal letrelax-myrelax: false</p>
</para>
<para xml:id="S3.SS6.p31">
<p>ifdefequal begin-begin: true</p>
</para>
<para xml:id="S3.SS6.p32">
<p>ifdefequal myempty-myempty: true</p>
</para>
<para xml:id="S3.SS6.p33">
<p>ifdefstring mymacro-ampersand: true</p>
</para>
<para xml:id="S3.SS6.p34">
<p>ifdefstring myrelax-relax: true</p>
</para>
<para xml:id="S3.SS6.p35">
<p>ifdefstring myempty-: true</p>
</para>
<para xml:id="S3.SS6.p36">
<p>ifdefstring basic-basic: true</p>
</para>
<para xml:id="S3.SS6.p37">
<p>ifcsstrequal basic-basic true</p>
</para>
<para xml:id="S3.SS6.p38">
<p>ifcsstrequal relax-relax false</p>
</para>
<para xml:id="S3.SS6.p39">
<p>ifcsstrequal myempty-relax false</p>
</para>
<para xml:id="S3.SS6.p40">
<p>ifcsstrequal myempty-anotherempty true</p>
</para>
<para xml:id="S3.SS6.p41">
<p>ifdefcounter relax: false</p>
</para>
<para xml:id="S3.SS6.p42">
<p>ifdefcounter mymacro: false</p>
</para>
<para xml:id="S3.SS6.p43">
<p>ifdefcounter tracingmacros: false</p>
</para>
<para xml:id="S3.SS6.p44">
<p>ifdefcounter hfuzz: false</p>
</para>
<para xml:id="S3.SS6.p45">
<p>ifdefcounter mycount: true</p>
</para>
<para xml:id="S3.SS6.p46">
<p>ifdefcounter mycount, after set: true</p>
</para>
<para xml:id="S3.SS6.p47">
<p>ifdefcounter latexcounter: false</p>
</para>
<para xml:id="S3.SS6.p48">
<p>ifdefcounter latexcounter, after step: false</p>
</para>
<para xml:id="S3.SS6.p49">
<p>ifdefcounter myskip: false</p>
</para>
<para xml:id="S3.SS6.p50">
<p>ifdefcounter mylen: false</p>
</para>
<para xml:id="S3.SS6.p51">
<p>ifdefcounter mydimen: false</p>
</para>
<para xml:id="S3.SS6.p52">
<p>ifltxcounter relax: false</p>
</para>
<para xml:id="S3.SS6.p53">
<p>ifltxcounter mymacro: false</p>
</para>
<para xml:id="S3.SS6.p54">
<p>ifltxcounter tracingmacros: false</p>
</para>
<para xml:id="S3.SS6.p55">
<p>ifltxcounter hfuzz: false</p>
</para>
<para xml:id="S3.SS6.p56">
<p>ifltxcounter mycount: false</p>
</para>
<para xml:id="S3.SS6.p57">
<p>ifltxcounter latexcounter: true</p>
</para>
<para xml:id="S3.SS6.p58">
<p>ifdeflength relax: false</p>
</para>
<para xml:id="S3.SS6.p59">
<p>ifdeflength mymacro: false</p>
</para>
<para xml:id="S3.SS6.p60">
<p>ifdeflength tracingmacros: false</p>
</para>
<para xml:id="S3.SS6.p61">
<p>ifdeflength hfuzz: false</p>
</para>
<para xml:id="S3.SS6.p62">
<p>ifdeflength mycount: false</p>
</para>
<para xml:id="S3.SS6.p63">
<p>ifdeflength myskip: true</p>
</para>
<para xml:id="S3.SS6.p64">
<p>ifdeflength mylen: true</p>
</para>
<para xml:id="S3.SS6.p65">
<p>ifdeflength mydimen: false</p>
</para>
<para xml:id="S3.SS6.p66">
<p>ifdefdimen relax: false</p>
</para>
<para xml:id="S3.SS6.p67">
<p>ifdefdimen mymacro: false</p>
</para>
<para xml:id="S3.SS6.p68">
<p>ifdefdimen tracingmacros: false</p>
</para>
<para xml:id="S3.SS6.p69">
<p>ifdefdimen hfuzz: false</p>
</para>
<para xml:id="S3.SS6.p70">
<p>ifdefdimen mycount: false</p>
</para>
<para xml:id="S3.SS6.p71">
<p>ifdefdimen myskip: false</p>
</para>
<para xml:id="S3.SS6.p72">
<p>ifdefdimen mylen: false</p>
</para>
<para xml:id="S3.SS6.p73">
<p>ifdefdimen mydimen: true</p>
</para>
<para xml:id="S3.SS6.p74">
<p>ifstrequal test 1 (false): false</p>
</para>
<para xml:id="S3.SS6.p75">
<p>ifstrequal test 2 (true): true</p>
</para>
<para xml:id="S3.SS6.p76">
<p>ifstrequal test 3 (true): true</p>
</para>
<para xml:id="S3.SS6.p77">
<p>ifstrequal test 4 (true): true</p>
</para>
<para xml:id="S3.SS6.p78">
<p>ifstrequal test 5 (false): false</p>
</para>
<para xml:id="S3.SS6.p79">
<p>ifstrempty test 1 (true): true</p>
</para>
<para xml:id="S3.SS6.p80">
<p>ifstrempty test 2 (false): false</p>
</para>
<para xml:id="S3.SS6.p81">
<p>ifstrempty test 3 (false): false</p>
</para>
<para xml:id="S3.SS6.p82">
<p>ifstrempty test 4 (false): false</p>
</para>
<para xml:id="S3.SS6.p83">
<p>ifblank test 1 (true): true</p>
</para>
<para xml:id="S3.SS6.p84">
<p>ifblank test 2 (false): false</p>
</para>
<para xml:id="S3.SS6.p85">
<p>ifblank test 3 (false): false</p>
</para>
<para xml:id="S3.SS6.p86">
<p>ifblank test 4 (true): true</p>
</para>
<para xml:id="S3.SS6.p87">
<p>notblank test 1 (false): false</p>
</para>
<para xml:id="S3.SS6.p88">
<p>notblank test 2 (true): true</p>
</para>
<para xml:id="S3.SS6.p89">
<p>notblank test 3 (true): true</p>
</para>
<para xml:id="S3.SS6.p90">
<p>notblank test 4 (false): false</p>
</para>
<para xml:id="S3.SS6.p91">
<p>ifnumcomp (false): false</p>
</para>
<para xml:id="S3.SS6.p92">
<p>ifnumcomp (true): true</p>
</para>
<para xml:id="S3.SS6.p93">
<p>ifnumcomp (false): false</p>
</para>
<para xml:id="S3.SS6.p94">
<p>ifnumcomp (true): true</p>
</para>
<para xml:id="S3.SS6.p95">
<p>ifnumcomp (true): true</p>
</para>
<para xml:id="S3.SS6.p96">
<p>ifboolexpr (false): false</p>
</para>
<para xml:id="S3.SS6.p97">
<p>ifboolexpr (true): true</p>
</para>
</subsection>
<subsection inlist="toc" xml:id="S3.SS7">
<tags>
<tag>3.7</tag>
<tag role="refnum">3.7</tag>
<tag role="typerefnum">§3.7</tag>
</tags>
<title><tag close=" ">3.7</tag>List Processing</title>
<para class="ltx_noindent" xml:id="S3.SS7.p1">
<p>Itemize list:</p>
<itemize xml:id="S3.I1">
<item xml:id="S3.I1.i1">
<tags>
<tag>•</tag>
<tag role="typerefnum">1st item</tag>
</tags>
<para xml:id="S3.I1.i1.p1">
<p>item1</p>
</para>
</item>
<item xml:id="S3.I1.i2">
<tags>
<tag>•</tag>
<tag role="typerefnum">2nd item</tag>
</tags>
<para xml:id="S3.I1.i2.p1">
<p>item2</p>
</para>
</item>
<item xml:id="S3.I1.i3">
<tags>
<tag>•</tag>
<tag role="typerefnum">3rd item</tag>
</tags>
<para xml:id="S3.I1.i3.p1">
<p>item3a, item3b</p>
</para>
</item>
<item xml:id="S3.I1.i4">
<tags>
<tag>•</tag>
<tag role="typerefnum">4th item</tag>
</tags>
<para xml:id="S3.I1.i4.p1">
<p>item4</p>
</para>
</item>
</itemize>
</para>
<para class="ltx_noindent" xml:id="S3.SS7.p2">
<p>Poor man’s list:<break/>* item1<break/>* item2<break/>* item3a, item3b<break/>* item4<break/></p>
</para>
<para xml:id="S3.SS7.p3">
<p>Dolistloop itemize:</p>
<itemize xml:id="S3.I2">
<item xml:id="S3.I2.i1">
<tags>
<tag>•</tag>
<tag role="typerefnum">1st item</tag>
</tags>
<para xml:id="S3.I2.i1.p1">
<p>itemA</p>
</para>
</item>
<item xml:id="S3.I2.i2">
<tags>
<tag>•</tag>
<tag role="typerefnum">2nd item</tag>
</tags>
<para xml:id="S3.I2.i2.p1">
<p>itemB</p>
</para>
</item>
<item xml:id="S3.I2.i3">
<tags>
<tag>•</tag>
<tag role="typerefnum">3rd item</tag>
</tags>
<para xml:id="S3.I2.i3.p1">
<p>itemC</p>
</para>
</item>
</itemize>
</para>
<para xml:id="S3.SS7.p4">
<p>Forlistloop itemize:</p>
<itemize xml:id="S3.I3">
<item xml:id="S3.I3.i1">
<tags>
<tag>•</tag>
<tag role="typerefnum">1st item</tag>
</tags>
<para xml:id="S3.I3.i1.p1">
<p>itemA</p>
</para>
</item>
<item xml:id="S3.I3.i2">
<tags>
<tag>•</tag>
<tag role="typerefnum">2nd item</tag>
</tags>
<para xml:id="S3.I3.i2.p1">
<p>itemB</p>
</para>
</item>
<item xml:id="S3.I3.i3">
<tags>
<tag>•</tag>
<tag role="typerefnum">3rd item</tag>
</tags>
<para xml:id="S3.I3.i3.p1">
<p>itemC</p>
</para>
</item>
<item xml:id="S3.I3.i4">
<tags>
<tag>•</tag>
<tag role="typerefnum">4th item</tag>
</tags>
<para xml:id="S3.I3.i4.p1">
<p>Total: 3 items</p>
</para>
</item>
</itemize>
</para>
<para xml:id="S3.SS7.p5">
<p>dolistloop search: item found!</p>
</para>
</subsection>
<subsection inlist="toc" xml:id="S3.SS8">
<tags>
<tag>3.8</tag>
<tag role="refnum">3.8</tag>
<tag role="typerefnum">§3.8</tag>
</tags>
<title><tag close=" ">3.8</tag>Miscellaneous Tools</title>
<para xml:id="S3.SS8.p1">
<p>1995 = 1995</p>
</para>
<para xml:id="S3.SS8.p2">
<p>116 = 116</p>
</para>
<para xml:id="S3.SS8.p3">
<p>ifnumless (true): true</p>
</para>
</subsection>
</section>
</document>