File Coverage

blib/lib/Text/ASCIIMathML.pm
Criterion Covered Total %
statement 492 511 96.2
branch 265 306 86.6
condition 105 141 74.4
subroutine 40 46 86.9
pod 3 4 75.0
total 905 1008 89.7


line stmt bran cond sub pod time code
1             package Text::ASCIIMathML;
2              
3             =pod
4             =head1 NAME
5              
6             Text::ASCIIMathML - Perl extension for parsing ASCIIMathML text into MathML
7              
8             =head1 SYNOPSIS
9              
10             use Text::ASCIIMathML;
11              
12             $parser=new Text::ASCIIMathML();
13              
14             $parser->SetAttributes(ForMoz => 1);
15              
16             $ASCIIMathML = "int_0^1 e^x dx";
17             $mathML = $parser->TextToMathML($ASCIIMathML);
18             $mathML = $parser->TextToMathML($ASCIIMathML, [title=>$ASCIIMathML]);
19             $mathML = $parser->TextToMathML($ASCIIMathML, undef, [displaystyle=>1]);
20              
21             $mathMLTree = $parser->TextToMathMLTree($ASCIIMathML);
22             $mathMLTree = $parser->TextToMathMLTree($ASCIIMathML, [title=>$ASCIIMathML]);
23             $mathMLTree = $parser->TextToMathMLTree($ASCIIMathML,undef,[displaystyle=>1]);
24              
25             $mathML = $mathMLTree->text();
26             $latex = $mathMLTree->latex();
27              
28             =head1 DESCRIPTION
29              
30             Text::ASCIIMathML is a parser for ASCIIMathML text which produces
31             MathML XML markup strings that are suitable for rendering by any
32             MathML-compliant browser.
33              
34             The parser uses the following attributes which are settable through
35             the SetAttributes method:
36              
37             =over 4
38              
39             =item C
40              
41             Specifies that the fonts should be optimized for Netscape/Mozilla/Firefox.
42              
43             =back
44              
45             The output of the TextToMathML method always follows the schema
46             ...
47             The first argument of TextToMathML is the ASCIIMathML text to be
48             parsed into MathML. The second argument is a reference to an array of
49             attribute/value pairs to be attached to the node and the third
50             argument is a reference to an array of attribute/value pairs for the
51             node. Common attributes for the node are "title" and
52             "xmlns"=>"&mathml;". Common attributes for the node are
53             "mathcolor" (for text color), "displaystyle"=>"true" for using display
54             style instead of inline style, and "fontfamily".
55              
56             =head2 ASCIIMathML markup
57              
58             The syntax is very permissive and does not generate syntax
59             errors. This allows mathematically incorrect expressions to be
60             displayed, which is important for teaching purposes. It also causes
61             less frustration when previewing formulas.
62              
63             If you encode 'x^2' or 'a_(mn)' or 'a_{mn}' or '(x+1)/y' or 'sqrtx',
64             you pretty much get what you expect. The choice of grouping
65             parenthesis is up to you (they don't have to match either). If the
66             displayed expression can be parsed uniquely without them, they are
67             omitted. Most LaTeX commands are also supported, so the last two
68             formulas above can also be written as '\frac{x+1}{y}' and '\sqrt{x}'.
69              
70             The parser uses no operator precedence and only respects the grouping
71             brackets, subscripts, superscript, fractions and (square) roots. This
72             is done for reasons of efficiency and generality. The resulting MathML
73             code can quite easily be processed further to ensure additional
74             syntactic requirements of any particular application.
75              
76             =head3 The grammar
77              
78             Here is a definition of the grammar used to parse
79             ASCIIMathML expressions. In the Backus-Naur form given below, the
80             letter on the left of the C<::=> represents a category of symbols that
81             could be one of the possible sequences of symbols listed on the right.
82             The vertical bar C<|> separates the alternatives.
83              
84             =over 4
85              
86             c ::= [A-z] | numbers | greek letters | other constant symbols
87             (see below)
88             u ::= 'sqrt' | 'text' | 'bb' | other unary symbols for font commands
89             b ::= 'frac' | 'root' | 'stackrel' | 'newcommand' | 'newsymbol'
90             binary symbols
91             l ::= ( | [ | { | (: | {: left brackets
92             r ::= ) | ] | } | :) | :} right brackets
93             S ::= c | lEr | uS | bSS | "any" simple expression
94             E ::= SE | S/S |S_S | S^S | S_S^S expression (fraction, sub-,
95             super-, subsuperscript)
96              
97             =back
98              
99             =head3 The translation rules
100              
101             Each terminal symbol is translated into a corresponding MathML
102             node. The constants are mostly converted to their respective Unicode
103             symbols. The other expressions are converted as follows:
104              
105             =over 4
106              
107             lSr -> lSr
108             (note that any pair of brackets can be used to
109             delimit subexpressions, they don't have to match)
110             sqrt S -> S'
111             text S -> S'
112             "any" -> any
113             frac S1 S2 -> S1' S2'
114             root S1 S2 -> S2' S1'
115             stackrel S1 S2 -> S2' S1'
116             S1/S2 -> S1' S2'
117             S1_S2 -> S1 S2'
118             S1^S2 -> S1 S2'
119             S1_S2^S3 -> S1 S2' S3' or
120             S1 S2' S3' (in some cases)
121             S1^S2_S3 -> S1 S3' S2' or
122             S1 S3' S2' (in some cases)
123              
124             =back
125              
126             In the rules above, the expression C is the same as C, except that if
127             C has an outer level of brackets, then C is the expression inside
128             these brackets.
129              
130             =head3 Matrices
131              
132             A simple syntax for matrices is also recognized:
133              
134             l(S11,...,S1n),(...),(Sm1,...,Smn)r
135             or
136             l[S11,...,S1n],[...],[Sm1,...,Smn]r.
137              
138             Here C and C stand for any of the left and right
139             brackets (just like in the grammar they do not have to match). Both of
140             these expressions are translated to
141              
142             lS11...
143             S1n...
144             Sm1...
145             Smnr.
146              
147             Note that each row must have the same number of expressions, and there
148             should be at least two rows.
149              
150             LaTeX matrix commands are not recognized.
151              
152             =head3 Tokenization
153              
154             The input formula is broken into tokens using a "longest matching
155             initial substring search". Suppose the input formula has been
156             processed from left to right up to a fixed position. The longest
157             string from the list of constants (given below) that matches the
158             initial part of the remainder of the formula is the next token. If
159             there is no matching string, then the first character of the remainder
160             is the next token. The symbol table at the top of the ASCIIMathML.js
161             script specifies whether a symbol is a math operator (surrounded by a
162             C<< >> tag) or a math identifier (surrounded by a C<< >>
163             tag). For single character tokens, letters are treated as math
164             identifiers, and non-alphanumeric characters are treated as math
165             operators. For digits, see "Numbers" below.
166              
167             Spaces are significant when they separate characters and thus prevent
168             a certain string of characters from matching one of the
169             constants. Multiple spaces and end-of-line characters are equivalent
170             to a single space.
171              
172             =head3 Numbers
173              
174             A string of digits, optionally followed by a decimal point (a period)
175             and another string of digits, is parsed as a single token and
176             converted to a MathML number, i.e., enclosed with the C<< >>
177             tag.
178              
179             =head3 Greek letters
180              
181             =over 4
182              
183             =item Lowercase letters
184              
185             C C C C C C C C
186             C C C C C C C C C
187             C C C C C C
188              
189             =item Uppercase letters
190              
191             C C C C C C C C
192             C C
193              
194             =item Variants
195              
196             C C C
197              
198             =back
199              
200             =head3 Standard functions
201              
202             sin cos tan csc sec cot sinh cosh tanh log ln det dim lim mod gcd lcm
203             min max
204              
205             =head3 Operation symbols
206              
207             Type Description Entity
208             + + +
209             - - -
210             * Mid dot ⋅
211             ** Star ⋆
212             // / /
213             \\ \ \
214             xx Cross product ×
215             -: Divided by ÷
216             @ Compose functions ∘
217             o+ Circle with plus ⊕
218             ox Circle with x ⊗
219             o. Circle with dot ⊙
220             sum Sum for sub- and superscript ∑
221             prod Product for sub- and superscript ∏
222             ^^ Logic "and" ∧
223             ^^^ Logic "and" for sub- and superscript ⋀
224             vv Logic "or" ∨
225             vvv Logic "or" for sub- and superscript ⋁
226             nn Logic "intersect" ∩
227             nnn Logic "intersect" for sub- and superscript ⋂
228             uu Logic "union" ∪
229             uuu Logic "union" for sub- and superscript ⋃
230              
231             =head3 Relation symbols
232              
233             Type Description Entity
234             = = =
235             != Not equals ≠
236             < < <
237             > > >
238             <= Less than or equal ≤
239             >= Greater than or equal ≥
240             -lt Precedes ≺
241             >- Succeeds ≻
242             in Element of ∈
243             !in Not an element of ∉
244             sub Subset ⊂
245             sup Superset ⊃
246             sube Subset or equal ⊆
247             supe Superset or equal ⊇
248             -= Equivalent ≡
249             ~= Congruent to ≅
250             ~~ Asymptotically equal to ≈
251             prop Proportional to ∝
252              
253             =head3 Logical symbols
254              
255             Type Description Entity
256             and And " and "
257             or Or " or "
258             not Not ¬
259             => Implies ⇒
260             if If " if "
261             iff If and only if ⇔
262             AA For all ∀
263             EE There exists ∃
264             _|_ Perpendicular, bottom ⊥
265             TT Top ⊤
266             |-- Right tee ⊢
267             |== Double right tee ⊨
268              
269             =head3 Grouping brackets
270              
271             Type Description Entity
272             ( ( (
273             ) ) )
274             [ [ [
275             ] ] ]
276             { { {
277             } } }
278             (: Left angle bracket ⟨
279             :) Right angle bracket ⟩
280             {: Invisible left grouping element
281             :} Invisible right grouping element
282              
283             =head3 Miscellaneous symbols
284              
285             Type Description Entity
286             int Integral ∫
287             oint Countour integral ∮
288             del Partial derivative &del;
289             grad Gradient ∇
290             +- Plus or minus ±
291             O/ Null set ∅
292             oo Infinity ∞
293             aleph Hebrew letter aleph ℵ
294             & Ampersand &
295             /_ Angle ∠
296             :. Therefore ∴
297             ... Ellipsis ...
298             cdots Three centered dots ⋯
299             \ Non-breaking space ( means space)  
300             quad Quad space   
301             diamond Diamond ⋄
302             square Square □
303             |__ Left floor ⌊
304             __| Right floor ⌋
305             |~ Left ceiling ⌈
306             ~| Right ceiling ⌉
307             CC Complex numbers ℂ
308             NN Natural numbers ℕ
309             QQ Rational numbers ℚ
310             RR Real numbers ℝ
311             ZZ Integers ℤ
312              
313             =head3 Arrows
314              
315             Type Description Entity
316             uarr Up arrow ↑
317             darr Down arrow ↓
318             rarr Right arrow →
319             -> Right arrow →
320             larr Left arrow ←
321             harr Horizontal (two-way) arrow ↔
322             rArr Right double arrow ⇒
323             lArr Left double arrow ⇐
324             hArr Horizontal double arrow ⇔
325              
326             =head3 Accents
327              
328             Type Description Output
329             hat x Hat over x x^
330             bar x Bar over x x¯
331             ul x Underbar under x x_
332             vec x Right arrow over x x
333             dot x Dot over x x.
334             ddot x Double dot over x x..
335              
336             =head3 Font commands
337              
338             Type Description
339             bb A Bold A
340             bbb A Double-struck A
341             cc A Calligraphic (script) A
342             tt A Teletype (monospace) A
343             fr A Fraktur A
344             sf A Sans-serif A
345              
346             =head3 Defining new commands and symbols
347              
348             It is possible to define new commands and symbols using the
349             'newcommand' and 'newsymbol' binary operators. The former defines a
350             macro that gets expanded and reparsed as ASCIIMathML and the latter
351             defines a constant that gets used as a math operator (C<< >>)
352             element. Both of the arguments must be text, optionally enclosed in
353             grouping operators. The 'newsymbol' operator also allows the
354             second argument to be a group of two text strings where the first is
355             the mathml operator and the second is the latex code to be output.
356              
357             For example, 'newcommand "DDX" "{:d/dx:}"' would define a new command
358             'DDX'. It could then be invoked like 'DDXf(x)', which would
359             expand to '{:d/dx:}f(x)'. The text 'newsymbol{"!le"}{"≰"}'
360             could be used to create a symbol you could invoke with '!le', as in 'a
361             !le b'.
362            
363             =head2 Attributes for
364              
365             =over 4
366              
367             =item C </td> </tr> <tr> <td class="h" > <a name="368">368</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="369">369</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The title attribute for the element, if specified. In many browsers, </td> </tr> <tr> <td class="h" > <a name="370">370</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> this string will appear if you hover over the MathML markup. </td> </tr> <tr> <td class="h" > <a name="371">371</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="372">372</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =item C<id> </td> </tr> <tr> <td class="h" > <a name="373">373</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="374">374</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The id attribute for the element, if specified. </td> </tr> <tr> <td class="h" > <a name="375">375</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="376">376</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =item C<class> </td> </tr> <tr> <td class="h" > <a name="377">377</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="378">378</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The class attribute for the element, if specified. </td> </tr> <tr> <td class="h" > <a name="379">379</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="380">380</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =back </td> </tr> <tr> <td class="h" > <a name="381">381</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="382">382</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head2 Attributes for <mstyle> </td> </tr> <tr> <td class="h" > <a name="383">383</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="384">384</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =over 4 </td> </tr> <tr> <td class="h" > <a name="385">385</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="386">386</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =item C<displaystyle> </td> </tr> <tr> <td class="h" > <a name="387">387</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="388">388</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The displaystyle attribute for the element, if specified. One of the </td> </tr> <tr> <td class="h" > <a name="389">389</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> values "true" or "false". If the displaystyle is false, then fractions </td> </tr> <tr> <td class="h" > <a name="390">390</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> are represented with a smaller font size and the placement of </td> </tr> <tr> <td class="h" > <a name="391">391</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> subscripts and superscripts of sums and integrals changes. </td> </tr> <tr> <td class="h" > <a name="392">392</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="393">393</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =item C<mathvariant> </td> </tr> <tr> <td class="h" > <a name="394">394</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="395">395</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The mathvariant attribute for the element, if specified. One of the </td> </tr> <tr> <td class="h" > <a name="396">396</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> values "normal", "bold", "italic", "bold-italic", "double-struck", </td> </tr> <tr> <td class="h" > <a name="397">397</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "bold-fraktur", "script", "bold-script", "fraktur", "sans-serif", </td> </tr> <tr> <td class="h" > <a name="398">398</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "bold-sans-serif", "sans-serif-italic", "sans-serif-bold-italic", or </td> </tr> <tr> <td class="h" > <a name="399">399</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "monospace". </td> </tr> <tr> <td class="h" > <a name="400">400</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="401">401</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =item C<mathsize> </td> </tr> <tr> <td class="h" > <a name="402">402</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="403">403</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The mathsize attribute for the element, if specified. Either "small", </td> </tr> <tr> <td class="h" > <a name="404">404</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "normal" or "big", or of the form "number v-unit". </td> </tr> <tr> <td class="h" > <a name="405">405</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="406">406</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =item C<mathfamily> </td> </tr> <tr> <td class="h" > <a name="407">407</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="408">408</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> A string representing the font family. </td> </tr> <tr> <td class="h" > <a name="409">409</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="410">410</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =item C<mathcolor> </td> </tr> <tr> <td class="h" > <a name="411">411</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="412">412</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The mathcolor attribute for the element, if specified. It be in one of </td> </tr> <tr> <td class="h" > <a name="413">413</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> the forms "#rgb" or "#rrggbb", or should be an html-color-name. </td> </tr> <tr> <td class="h" > <a name="414">414</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="415">415</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =item C<mathbackground> </td> </tr> <tr> <td class="h" > <a name="416">416</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="417">417</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The mathbackground attribute for the element, if specified. It should </td> </tr> <tr> <td class="h" > <a name="418">418</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> be in one of the forms "#rgb" or "#rrggbb", or an html-color-name, or </td> </tr> <tr> <td class="h" > <a name="419">419</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> the keyword "transparent". </td> </tr> <tr> <td class="h" > <a name="420">420</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="421">421</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="422">422</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head1 METHODS </td> </tr> <tr> <td class="h" > <a name="423">423</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="424">424</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head2 C<Text::ASCIIMathML> </td> </tr> <tr> <td class="h" > <a name="425">425</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="426">426</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head3 C<TextToMathML($text, [$math_attr], [$mstyle_attr])> </td> </tr> <tr> <td class="h" > <a name="427">427</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="428">428</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> Converts C<$text> to a MathML string. If the optional C<$math_attr> </td> </tr> <tr> <td class="h" > <a name="429">429</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> argument is provided, it should be a reference to a hash of </td> </tr> <tr> <td class="h" > <a name="430">430</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> attribute/value pairs for the C< <math> > node. If the optional </td> </tr> <tr> <td class="h" > <a name="431">431</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> C<$mstyle_attr> argument is provided, it should be a reference to a </td> </tr> <tr> <td class="h" > <a name="432">432</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> hash of attribute/value pairs for the C< <mstyle> > node. </td> </tr> <tr> <td class="h" > <a name="433">433</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="434">434</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head3 C<TextToMathMLTree($text, [$math_attr], [$mstyle_attr])> </td> </tr> <tr> <td class="h" > <a name="435">435</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="436">436</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> Like C<TextToMathMLTree> except that instead of returning a string, it </td> </tr> <tr> <td class="h" > <a name="437">437</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> returns a C<Text::ASCIIMathML::Node> representing the parsed MathML </td> </tr> <tr> <td class="h" > <a name="438">438</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> structure. </td> </tr> <tr> <td class="h" > <a name="439">439</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="440">440</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head2 C<Text::ASCIIMathML::Node> </td> </tr> <tr> <td class="h" > <a name="441">441</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="442">442</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head3 C<text> </td> </tr> <tr> <td class="h" > <a name="443">443</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="444">444</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> Returns a MathML string representing the parsed MathML structure </td> </tr> <tr> <td class="h" > <a name="445">445</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> encoded by the C<Text::ASCIIMathML::Node>. </td> </tr> <tr> <td class="h" > <a name="446">446</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="447">447</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head3 C<latex> </td> </tr> <tr> <td class="h" > <a name="448">448</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="449">449</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> Returns a LaTeX string representing the parsed MathML structure </td> </tr> <tr> <td class="h" > <a name="450">450</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> encoded by the C<Text::ASCIIMathML::Node>. </td> </tr> <tr> <td class="h" > <a name="451">451</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="452">452</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head1 BUGS AND SUGGESTIONS </td> </tr> <tr> <td class="h" > <a name="453">453</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="454">454</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> If you find bugs, think of anything that could improve Text::ASCIIMathML </td> </tr> <tr> <td class="h" > <a name="455">455</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> or have any questions related to it, feel free to contact the author. </td> </tr> <tr> <td class="h" > <a name="456">456</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="457">457</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head1 AUTHOR </td> </tr> <tr> <td class="h" > <a name="458">458</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="459">459</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> Mark Nodine <mnodine@alum.mit.edu> </td> </tr> <tr> <td class="h" > <a name="460">460</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="461">461</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head1 SEE ALSO </td> </tr> <tr> <td class="h" > <a name="462">462</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="463">463</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> MathML::Entities, </td> </tr> <tr> <td class="h" > <a name="464">464</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> <http://www1.chapman.edu/~jipsen/mathml/asciimathsyntax.xml> </td> </tr> <tr> <td class="h" > <a name="465">465</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="466">466</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head1 ACKNOWLEDGEMENTS </td> </tr> <tr> <td class="h" > <a name="467">467</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="468">468</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> This Perl module has been created by modifying Peter Jipsen's </td> </tr> <tr> <td class="h" > <a name="469">469</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ASCIIMathML.js script. He deserves full credit for the original </td> </tr> <tr> <td class="h" > <a name="470">470</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> implementation; any bugs have probably been introduced by me. </td> </tr> <tr> <td class="h" > <a name="471">471</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="472">472</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =head1 COPYRIGHT </td> </tr> <tr> <td class="h" > <a name="473">473</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="474">474</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> The Text::ASCIIMathML module is copyright (c) 2006 Mark Nodine, </td> </tr> <tr> <td class="h" > <a name="475">475</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> USA. All rights reserved. </td> </tr> <tr> <td class="h" > <a name="476">476</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="477">477</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> You may use and distribute them under the terms of either the GNU </td> </tr> <tr> <td class="h" > <a name="478">478</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> General Public License or the Artistic License, as specified in the </td> </tr> <tr> <td class="h" > <a name="479">479</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> Perl README file. </td> </tr> <tr> <td class="h" > <a name="480">480</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="481">481</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> =cut </td> </tr> <tr> <td class="h" > <a name="482">482</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="483">483</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#483-1"> 1 </a> </td> <td >   </td> <td > 47331 </td> <td class="s"> use strict; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 39 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="484">484</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#484-1"> 1 </a> </td> <td >   </td> <td > 6 </td> <td class="s"> use warnings; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3808 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="485">485</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="486">486</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> our $VERSION = '0.81'; </td> </tr> <tr> <td class="h" > <a name="487">487</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="488">488</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Creates a new Text::ASCIIMathML parser object </td> </tr> <tr> <td class="h" > <a name="489">489</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub new { </td> </tr> <tr> <td class="h" > <a name="490">490</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#490-1"> 1 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#490-1"> 1 </a> </td> <td > 11230 </td> <td class="s"> my ($class) = @_; </td> </tr> <tr> <td class="h" > <a name="491">491</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5 </td> <td class="s"> return bless {}, $class; </td> </tr> <tr> <td class="h" > <a name="492">492</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="493">493</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="494">494</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Sets an attribute to a given value </td> </tr> <tr> <td class="h" > <a name="495">495</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: Attribute name, attribute value </td> </tr> <tr> <td class="h" > <a name="496">496</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: None </td> </tr> <tr> <td class="h" > <a name="497">497</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Supported attributes: </td> </tr> <tr> <td class="h" > <a name="498">498</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # ForMoz Boolean to optimize for Netscape/Mozilla/Firefox </td> </tr> <tr> <td class="h" > <a name="499">499</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub SetAttribute : method { </td> </tr> <tr> <td class="h" > <a name="500">500</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#500-1"> 1 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#500-1"> 0 </a> </td> <td > 7 </td> <td class="s"> my ($self, $attr, $val) = @_; </td> </tr> <tr> <td class="h" > <a name="501">501</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 11 </td> <td class="s"> $self->{attr}{$attr} = $val; </td> </tr> <tr> <td class="h" > <a name="502">502</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="503">503</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="504">504</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Converts an AsciiMathML string to a MathML one </td> </tr> <tr> <td class="h" > <a name="505">505</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: AsciiMathML string, </td> </tr> <tr> <td class="h" > <a name="506">506</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # optional ref to array of attribute/value pairs for math node, </td> </tr> <tr> <td class="h" > <a name="507">507</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # optional ref to array of attribute/value pairs for mstyle node </td> </tr> <tr> <td class="h" > <a name="508">508</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: MathML string </td> </tr> <tr> <td class="h" > <a name="509">509</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub TextToMathML : method { </td> </tr> <tr> <td class="h" > <a name="510">510</a> </td> <td class="c3" > 275 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#510-1"> 275 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#510-1"> 1 </a> </td> <td > 289252 </td> <td class="s"> my $tree = TextToMathMLTree(@_); </td> </tr> <tr> <td class="h" > <a name="511">511</a> </td> <td class="c3" > 275 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#511-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1134 </td> <td class="s"> return $tree ? $tree->text : ''; </td> </tr> <tr> <td class="h" > <a name="512">512</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="513">513</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="514">514</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Converts an AsciiMathML string to a tree of MathML nodes </td> </tr> <tr> <td class="h" > <a name="515">515</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: AsciiMathML string, </td> </tr> <tr> <td class="h" > <a name="516">516</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # optional ref to array of attribute/value pairs for math node, </td> </tr> <tr> <td class="h" > <a name="517">517</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # optional ref to array of attribute/value pairs for mstyle node </td> </tr> <tr> <td class="h" > <a name="518">518</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: top Text::ASCIIMathML::Node object or undefined </td> </tr> <tr> <td class="h" > <a name="519">519</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub TextToMathMLTree : method { </td> </tr> <tr> <td class="h" > <a name="520">520</a> </td> <td class="c3" > 548 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#520-1"> 548 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#520-1"> 1 </a> </td> <td > 1196 </td> <td class="s"> my ($self, $expr, $mathAttr, $mstyleAttr) = @_; </td> </tr> <tr> <td class="h" > <a name="521">521</a> </td> <td class="c3" > 548 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#521-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 20657 </td> <td class="s"> $expr = '' unless defined $expr; </td> </tr> <tr> <td class="h" > <a name="522">522</a> </td> <td class="c3" > 548 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5688 </td> <td class="s"> my $mstyle = $self->_createElementMathML('mstyle'); </td> </tr> <tr> <td class="h" > <a name="523">523</a> </td> <td class="c3" > 548 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#523-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 3853 </td> <td class="s"> $mstyle->setAttribute </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="524">524</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> (ref $mstyleAttr eq 'ARRAY' ? @$mstyleAttr : %$mstyleAttr) </td> </tr> <tr> <td class="h" > <a name="525">525</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $mstyleAttr; </td> </tr> <tr> <td class="h" > <a name="526">526</a> </td> <td class="c3" > 548 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1007 </td> <td class="s"> $self->{nestingDepth} = 0; </td> </tr> <tr> <td class="h" > <a name="527">527</a> </td> <td class="c3" > 548 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1376 </td> <td class="s"> $expr =~ s/^\s+//; </td> </tr> <tr> <td class="h" > <a name="528">528</a> </td> <td class="c3" > 548 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1997 </td> <td class="s"> $mstyle->appendChild(($self->_parseExpr($expr, 0))[0]); </td> </tr> <tr> <td class="h" > <a name="529">529</a> </td> <td class="c3" > 548 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#529-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 2415 </td> <td class="s"> return unless $mstyle->childNodes > 0; </td> </tr> <tr> <td class="h" > <a name="530">530</a> </td> <td class="c3" > 547 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1624 </td> <td class="s"> my $math = $self->_createMmlNode('math', $mstyle); </td> </tr> <tr> <td class="h" > <a name="531">531</a> </td> <td class="c3" > 547 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1340 </td> <td class="s"> $expr =~ s/\n\s*//g; </td> </tr> <tr> <td class="h" > <a name="532">532</a> </td> <td class="c3" > 547 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#532-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 2163 </td> <td class="s"> $math->setAttribute(ref $mathAttr eq 'ARRAY' ? @$mathAttr : %$mathAttr) </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="533">533</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $mathAttr; </td> </tr> <tr> <td class="h" > <a name="534">534</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> </td> </tr> <tr> <td class="h" > <a name="535">535</a> </td> <td class="c3" > 547 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2110 </td> <td class="s"> return $math; </td> </tr> <tr> <td class="h" > <a name="536">536</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="537">537</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="538">538</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="539">539</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="540">540</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Creates an Text::ASCIIMathML::Node object with no tag </td> </tr> <tr> <td class="h" > <a name="541">541</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="542">542</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: node object </td> </tr> <tr> <td class="h" > <a name="543">543</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _createDocumentFragment : method { </td> </tr> <tr> <td class="h" > <a name="544">544</a> </td> <td class="c3" > 4069 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#544-1"> 4069 </a> </td> <td >   </td> <td > 5304 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="545">545</a> </td> <td class="c3" > 4069 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 10489 </td> <td class="s"> return Text::ASCIIMathML::Node->new($self); </td> </tr> <tr> <td class="h" > <a name="546">546</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="547">547</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="548">548</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Creates an Text::ASCIIMathML::Node object </td> </tr> <tr> <td class="h" > <a name="549">549</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: tag </td> </tr> <tr> <td class="h" > <a name="550">550</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: node object </td> </tr> <tr> <td class="h" > <a name="551">551</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _createElementMathML : method { </td> </tr> <tr> <td class="h" > <a name="552">552</a> </td> <td class="c3" > 586 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#552-1"> 586 </a> </td> <td >   </td> <td > 1285 </td> <td class="s"> my ($self, $t) = @_; </td> </tr> <tr> <td class="h" > <a name="553">553</a> </td> <td class="c3" > 586 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1977 </td> <td class="s"> return Text::ASCIIMathML::Node->new($self, $t); </td> </tr> <tr> <td class="h" > <a name="554">554</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="555">555</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="556">556</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Creates an Text::ASCIIMathML::Node object and appends a node as a child </td> </tr> <tr> <td class="h" > <a name="557">557</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: tag, node </td> </tr> <tr> <td class="h" > <a name="558">558</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: node object </td> </tr> <tr> <td class="h" > <a name="559">559</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _createMmlNode : method { </td> </tr> <tr> <td class="h" > <a name="560">560</a> </td> <td class="c3" > 4880 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#560-1"> 4880 </a> </td> <td >   </td> <td > 10078 </td> <td class="s"> my ($self, $t, $obj) = @_; </td> </tr> <tr> <td class="h" > <a name="561">561</a> </td> <td class="c3" > 4880 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14713 </td> <td class="s"> my $node = Text::ASCIIMathML::Node->new($self, $t); </td> </tr> <tr> <td class="h" > <a name="562">562</a> </td> <td class="c3" > 4880 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 12341 </td> <td class="s"> $node->appendChild($obj); </td> </tr> <tr> <td class="h" > <a name="563">563</a> </td> <td class="c3" > 4880 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 41189 </td> <td class="s"> return $node; </td> </tr> <tr> <td class="h" > <a name="564">564</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="565">565</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="566">566</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Creates an Text::ASCIIMathML::Node text object with the given text </td> </tr> <tr> <td class="h" > <a name="567">567</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: text </td> </tr> <tr> <td class="h" > <a name="568">568</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: node object </td> </tr> <tr> <td class="h" > <a name="569">569</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _createTextNode : method { </td> </tr> <tr> <td class="h" > <a name="570">570</a> </td> <td class="c3" > 3193 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#570-1"> 3193 </a> </td> <td >   </td> <td > 5932 </td> <td class="s"> my ($self, $text) = @_; </td> </tr> <tr> <td class="h" > <a name="571">571</a> </td> <td class="c3" > 3193 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 12802 </td> <td class="s"> return Text::ASCIIMathML::Node->newText ($self, $text); </td> </tr> <tr> <td class="h" > <a name="572">572</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="573">573</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="574">574</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Finds maximal initial substring of str that appears in names </td> </tr> <tr> <td class="h" > <a name="575">575</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # return null if there is none </td> </tr> <tr> <td class="h" > <a name="576">576</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: string </td> </tr> <tr> <td class="h" > <a name="577">577</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: matched input, entry from AMSymbol (if any) </td> </tr> <tr> <td class="h" > <a name="578">578</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _getSymbol : method { </td> </tr> <tr> <td class="h" > <a name="579">579</a> </td> <td class="c3" > 10482 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#579-1"> 10482 </a> </td> <td >   </td> <td > 15796 </td> <td class="s"> my $self = shift; </td> </tr> <tr> <td class="h" > <a name="580">580</a> </td> <td class="c3" > 10482 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 23860 </td> <td class="s"> my ($input, $symbol) = $self->_getSymbol_(@_); </td> </tr> <tr> <td class="h" > <a name="581">581</a> </td> <td class="c3" > 10482 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#581-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 37063 </td> <td class="s"> $self->{previousSymbol} = $symbol->{ttype} if $symbol; </td> </tr> <tr> <td class="h" > <a name="582">582</a> </td> <td class="c3" > 10482 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 40184 </td> <td class="s"> return $input, $symbol; </td> </tr> <tr> <td class="h" > <a name="583">583</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="584">584</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="585">585</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> BEGIN { </td> </tr> <tr> <td class="h" > <a name="586">586</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # character lists for Mozilla/Netscape fonts </td> </tr> <tr> <td class="h" > <a name="587">587</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#587-1"> 1 </a> </td> <td >   </td> <td > 7 </td> <td class="s"> my $AMcal = [0xEF35,0x212C,0xEF36,0xEF37,0x2130,0x2131,0xEF38,0x210B,0x2110,0xEF39,0xEF3A,0x2112,0x2133,0xEF3B,0xEF3C,0xEF3D,0xEF3E,0x211B,0xEF3F,0xEF40,0xEF41,0xEF42,0xEF43,0xEF44,0xEF45,0xEF46]; </td> </tr> <tr> <td class="h" > <a name="588">588</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 9 </td> <td class="s"> my $AMfrk = [0xEF5D,0xEF5E,0x212D,0xEF5F,0xEF60,0xEF61,0xEF62,0x210C,0x2111,0xEF63,0xEF64,0xEF65,0xEF66,0xEF67,0xEF68,0xEF69,0xEF6A,0x211C,0xEF6B,0xEF6C,0xEF6D,0xEF6E,0xEF6F,0xEF70,0xEF71,0x2128]; </td> </tr> <tr> <td class="h" > <a name="589">589</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4 </td> <td class="s"> my $AMbbb = [0xEF8C,0xEF8D,0x2102,0xEF8E,0xEF8F,0xEF90,0xEF91,0x210D,0xEF92,0xEF93,0xEF94,0xEF95,0xEF96,0x2115,0xEF97,0x2119,0x211A,0x211D,0xEF98,0xEF99,0xEF9A,0xEF9B,0xEF9C,0xEF9D,0xEF9E,0x2124]; </td> </tr> <tr> <td class="h" > <a name="590">590</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="591">591</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Create closure for static variables </td> </tr> <tr> <td class="h" > <a name="592">592</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 652 </td> <td class="s"> my %AMSymbol = ( </td> </tr> <tr> <td class="h" > <a name="593">593</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sqrt" => { tag=>"msqrt", output=>"sqrt", tex=>'', ttype=>"UNARY" }, </td> </tr> <tr> <td class="h" > <a name="594">594</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "root" => { tag=>"mroot", output=>"root", tex=>'', ttype=>"BINARY" }, </td> </tr> <tr> <td class="h" > <a name="595">595</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "frac" => { tag=>"mfrac", output=>"/", tex=>'', ttype=>"BINARY" }, </td> </tr> <tr> <td class="h" > <a name="596">596</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "/" => { tag=>"mfrac", output=>"/", tex=>'', ttype=>"INFIX" }, </td> </tr> <tr> <td class="h" > <a name="597">597</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "stackrel" => { tag=>"mover", output=>"stackrel", tex=>'', ttype=>"BINARY" }, </td> </tr> <tr> <td class="h" > <a name="598">598</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "_" => { tag=>"msub", output=>"_", tex=>'', ttype=>"INFIX" }, </td> </tr> <tr> <td class="h" > <a name="599">599</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "^" => { tag=>"msup", output=>"^", tex=>'', ttype=>"INFIX" }, </td> </tr> <tr> <td class="h" > <a name="600">600</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "text" => { tag=>"mtext", output=>"text", tex=>'', ttype=>"TEXT" }, </td> </tr> <tr> <td class="h" > <a name="601">601</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mbox" => { tag=>"mtext", output=>"mbox", tex=>'', ttype=>"TEXT" }, </td> </tr> <tr> <td class="h" > <a name="602">602</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\"" => { tag=>"mtext", output=>"mbox", tex=>'', ttype=>"TEXT" }, </td> </tr> <tr> <td class="h" > <a name="603">603</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="604">604</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # new for perl </td> </tr> <tr> <td class="h" > <a name="605">605</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "newcommand" => { ttype=>"BINARY"}, </td> </tr> <tr> <td class="h" > <a name="606">606</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "newsymbol" => { ttype=>"BINARY" }, </td> </tr> <tr> <td class="h" > <a name="607">607</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="608">608</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # some greek symbols </td> </tr> <tr> <td class="h" > <a name="609">609</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "alpha" => { tag=>"mi", output=>"α", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="610">610</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "beta" => { tag=>"mi", output=>"β", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="611">611</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "chi" => { tag=>"mi", output=>"χ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="612">612</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "delta" => { tag=>"mi", output=>"δ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="613">613</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Delta" => { tag=>"mo", output=>"Δ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="614">614</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "epsi" => { tag=>"mi", output=>"ε", tex=>"epsilon", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="615">615</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "varepsilon" => { tag=>"mi", output=>"ɛ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="616">616</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "eta" => { tag=>"mi", output=>"η", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="617">617</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "gamma" => { tag=>"mi", output=>"γ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="618">618</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Gamma" => { tag=>"mo", output=>"Γ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="619">619</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "iota" => { tag=>"mi", output=>"ι", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="620">620</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "kappa" => { tag=>"mi", output=>"κ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="621">621</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "lambda" => { tag=>"mi", output=>"λ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="622">622</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Lambda" => { tag=>"mo", output=>"Λ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="623">623</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mu" => { tag=>"mi", output=>"μ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="624">624</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "nu" => { tag=>"mi", output=>"ν", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="625">625</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "omega" => { tag=>"mi", output=>"ω", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="626">626</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Omega" => { tag=>"mo", output=>"Ω", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="627">627</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "phi" => { tag=>"mi", output=>"ϕ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="628">628</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "varphi" => { tag=>"mi", output=>"φ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="629">629</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Phi" => { tag=>"mo", output=>"Φ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="630">630</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "pi" => { tag=>"mi", output=>"π", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="631">631</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Pi" => { tag=>"mo", output=>"Π", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="632">632</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "psi" => { tag=>"mi", output=>"ψ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="633">633</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Psi" => { tag=>"mi", output=>"Ψ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="634">634</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "rho" => { tag=>"mi", output=>"ρ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="635">635</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sigma" => { tag=>"mi", output=>"σ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="636">636</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Sigma" => { tag=>"mo", output=>"Σ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="637">637</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "tau" => { tag=>"mi", output=>"τ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="638">638</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "theta" => { tag=>"mi", output=>"θ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="639">639</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "vartheta" => { tag=>"mi", output=>"ϑ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="640">640</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Theta" => { tag=>"mo", output=>"Θ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="641">641</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "upsilon" => { tag=>"mi", output=>"υ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="642">642</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "xi" => { tag=>"mi", output=>"ξ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="643">643</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Xi" => { tag=>"mo", output=>"Ξ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="644">644</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "zeta" => { tag=>"mi", output=>"ζ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="645">645</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="646">646</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # binary operation symbols </td> </tr> <tr> <td class="h" > <a name="647">647</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "*" => { tag=>"mo", output=>"⋅", tex=>"cdot", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="648">648</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "**" => { tag=>"mo", output=>"⋆", tex=>"star", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="649">649</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "//" => { tag=>"mo", output=>"/", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="650">650</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\\\\" => { tag=>"mo", output=>"\\", tex=>"backslash", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="651">651</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "setminus" => { tag=>"mo", output=>"\\", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="652">652</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "xx" => { tag=>"mo", output=>"×", tex=>"times", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="653">653</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "-:" => { tag=>"mo", output=>"÷", tex=>"div", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="654">654</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "@" => { tag=>"mo", output=>"∘", tex=>"circ", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="655">655</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "o+" => { tag=>"mo", output=>"⊕", tex=>"oplus", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="656">656</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "ox" => { tag=>"mo", output=>"⊗", tex=>"otimes", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="657">657</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "o." => { tag=>"mo", output=>"⊙", tex=>"odot", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="658">658</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sum" => { tag=>"mo", output=>"∑", tex=>'', ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="659">659</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "prod" => { tag=>"mo", output=>"∏", tex=>'', ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="660">660</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "^^" => { tag=>"mo", output=>"∧", tex=>"wedge", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="661">661</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "^^^" => { tag=>"mo", output=>"⋀", tex=>"bigwedge", ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="662">662</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "vv" => { tag=>"mo", output=>"∨", tex=>"vee", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="663">663</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "vvv" => { tag=>"mo", output=>"⋁", tex=>"bigvee", ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="664">664</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "nn" => { tag=>"mo", output=>"∩", tex=>"cap", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="665">665</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "nnn" => { tag=>"mo", output=>"⋂", tex=>"bigcap", ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="666">666</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "uu" => { tag=>"mo", output=>"∪", tex=>"cup", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="667">667</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "uuu" => { tag=>"mo", output=>"⋃", tex=>"bigcup", ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="668">668</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="669">669</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # binary relation symbols </td> </tr> <tr> <td class="h" > <a name="670">670</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "!=" => { tag=>"mo", output=>"≠", tex=>"ne", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="671">671</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ":=" => { tag=>"mo", output=>":=", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="672">672</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> #"lt" => { tag=>"mo", output=>"<", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="673">673</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "lt" => { tag=>"mo", output=>"<", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="674">674</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "<=" => { tag=>"mo", output=>"≤", tex=>"le", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="675">675</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "lt=" => { tag=>"mo", output=>"≤", tex=>"leq", ttype=>"CONST", latex=>1 }, </td> </tr> <tr> <td class="h" > <a name="676">676</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ">=" => { tag=>"mo", output=>"≥", tex=>"ge", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="677">677</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "geq" => { tag=>"mo", output=>"≥", tex=>'', ttype=>"CONST", latex=>1 }, </td> </tr> <tr> <td class="h" > <a name="678">678</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "-<" => { tag=>"mo", output=>"≺", tex=>"prec", ttype=>"CONST", latex=>1 }, </td> </tr> <tr> <td class="h" > <a name="679">679</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "-lt" => { tag=>"mo", output=>"≺", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="680">680</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ">-" => { tag=>"mo", output=>"≻", tex=>"succ", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="681">681</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "in" => { tag=>"mo", output=>"∈", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="682">682</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "!in" => { tag=>"mo", output=>"∉", tex=>"notin", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="683">683</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sub" => { tag=>"mo", output=>"⊂", tex=>"subset", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="684">684</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sup" => { tag=>"mo", output=>"⊃", tex=>"supset", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="685">685</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sube" => { tag=>"mo", output=>"⊆", tex=>"subseteq", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="686">686</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "supe" => { tag=>"mo", output=>"⊇", tex=>"supseteq", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="687">687</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "-=" => { tag=>"mo", output=>"≡", tex=>"equiv", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="688">688</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "~=" => { tag=>"mo", output=>"≅", tex=>"cong", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="689">689</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "~~" => { tag=>"mo", output=>"≈", tex=>"approx", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="690">690</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "prop" => { tag=>"mo", output=>"∝", tex=>"propto", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="691">691</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="692">692</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # new for perl </td> </tr> <tr> <td class="h" > <a name="693">693</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "<" => { tag=>"mo", output=>"<", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="694">694</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "gt" => { tag=>"mo", output=>">", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="695">695</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ">" => { tag=>"mo", output=>">", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="696">696</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\\!" => { tag=>"", output=>'', tex=>'', ttype=>"NOP" }, </td> </tr> <tr> <td class="h" > <a name="697">697</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="698">698</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="699">699</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # logical symbols </td> </tr> <tr> <td class="h" > <a name="700">700</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "and" => { tag=>"mtext", output=>"and", tex=>'', ttype=>"SPACE" }, </td> </tr> <tr> <td class="h" > <a name="701">701</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "or" => { tag=>"mtext", output=>"or", tex=>'', ttype=>"SPACE" }, </td> </tr> <tr> <td class="h" > <a name="702">702</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "not" => { tag=>"mo", output=>"¬", tex=>"neg", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="703">703</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "=>" => { tag=>"mo", output=>"⇒", tex=>"implies", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="704">704</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "if" => { tag=>"mo", output=>"if", tex=>'if', ttype=>"SPACE" }, </td> </tr> <tr> <td class="h" > <a name="705">705</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "<=>" => { tag=>"mo", output=>"⇔", tex=>"iff", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="706">706</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "AA" => { tag=>"mo", output=>"∀", tex=>"forall", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="707">707</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "EE" => { tag=>"mo", output=>"∃", tex=>"exists", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="708">708</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "_|_" => { tag=>"mo", output=>"⊥", tex=>"bot", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="709">709</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "TT" => { tag=>"mo", output=>"⊤", tex=>"top", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="710">710</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "|--" => { tag=>"mo", output=>"⊢", tex=>"vdash", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="711">711</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "|==" => { tag=>"mo", output=>"⊨", tex=>"models", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="712">712</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="713">713</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # grouping brackets </td> </tr> <tr> <td class="h" > <a name="714">714</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "(" => { tag=>"mo", output=>"(", tex=>'', ttype=>"LEFTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="715">715</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ")" => { tag=>"mo", output=>")", tex=>'', ttype=>"RIGHTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="716">716</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "[" => { tag=>"mo", output=>"[", tex=>'', ttype=>"LEFTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="717">717</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "]" => { tag=>"mo", output=>"]", tex=>'', ttype=>"RIGHTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="718">718</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "{" => { tag=>"mo", output=>"{", tex=>'', ttype=>"LEFTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="719">719</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "}" => { tag=>"mo", output=>"}", tex=>'', ttype=>"RIGHTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="720">720</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "|" => { tag=>"mo", output=>"|", tex=>'', ttype=>"LEFTRIGHT" }, </td> </tr> <tr> <td class="h" > <a name="721">721</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # {input:"||", tag:"mo", output:"||", tex:null, ttype:LEFTRIGHT}, </td> </tr> <tr> <td class="h" > <a name="722">722</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "(:" => { tag=>"mo", output=>"〈", tex=>"langle", ttype=>"LEFTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="723">723</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ":)" => { tag=>"mo", output=>"〉", tex=>"rangle", ttype=>"RIGHTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="724">724</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "<<" => { tag=>"mo", output=>"〈", tex=>'langle', ttype=>"LEFTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="725">725</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ">>" => { tag=>"mo", output=>"〉", tex=>'rangle', ttype=>"RIGHTBRACKET" }, </td> </tr> <tr> <td class="h" > <a name="726">726</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "{:" => { tag=>"mo", output=>"{:", tex=>'', ttype=>"LEFTBRACKET", invisible=>"true" }, </td> </tr> <tr> <td class="h" > <a name="727">727</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ":}" => { tag=>"mo", output=>":}", tex=>'', ttype=>"RIGHTBRACKET", invisible=>"true" }, </td> </tr> <tr> <td class="h" > <a name="728">728</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="729">729</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # miscellaneous symbols </td> </tr> <tr> <td class="h" > <a name="730">730</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "int" => { tag=>"mo", output=>"∫", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="731">731</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "dx" => { tag=>"mi", output=>"{:d x:}", tex=>'', ttype=>"DEFINITION" }, </td> </tr> <tr> <td class="h" > <a name="732">732</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "dy" => { tag=>"mi", output=>"{:d y:}", tex=>'', ttype=>"DEFINITION" }, </td> </tr> <tr> <td class="h" > <a name="733">733</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "dz" => { tag=>"mi", output=>"{:d z:}", tex=>'', ttype=>"DEFINITION" }, </td> </tr> <tr> <td class="h" > <a name="734">734</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "dt" => { tag=>"mi", output=>"{:d t:}", tex=>'', ttype=>"DEFINITION" }, </td> </tr> <tr> <td class="h" > <a name="735">735</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "oint" => { tag=>"mo", output=>"∮", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="736">736</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "del" => { tag=>"mo", output=>"∂", tex=>"partial", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="737">737</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "grad" => { tag=>"mo", output=>"∇", tex=>"nabla", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="738">738</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "+-" => { tag=>"mo", output=>"±", tex=>"pm", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="739">739</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "O/" => { tag=>"mo", output=>"∅", tex=>"emptyset", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="740">740</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "oo" => { tag=>"mo", output=>"∞", tex=>"infty", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="741">741</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "aleph" => { tag=>"mo", output=>"ℵ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="742">742</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "..." => { tag=>"mo", output=>"...", tex=>"ldots", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="743">743</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ":." => { tag=>"mo", output=>"∴", tex=>"therefore", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="744">744</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "/_" => { tag=>"mo", output=>"∠", tex=>"angle", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="745">745</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "&" => { tag=>"mo", output=>"&", tex=>'\&', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="746">746</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\\ " => { tag=>"mo", output=>" ", tex=>'\,', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="747">747</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "quad" => { tag=>"mo", output=>"  ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="748">748</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "qquad" => { tag=>"mo", output=>"    ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="749">749</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "cdots" => { tag=>"mo", output=>"⋯", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="750">750</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "vdots" => { tag=>"mo", output=>"⋮", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="751">751</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "ddots" => { tag=>"mo", output=>"⋱", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="752">752</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "diamond" => { tag=>"mo", output=>"⋄", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="753">753</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "square" => { tag=>"mo", output=>"□", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="754">754</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "|__" => { tag=>"mo", output=>"⌊", tex=>"lfloor", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="755">755</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "__|" => { tag=>"mo", output=>"⌋", tex=>"rfloor", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="756">756</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "|~" => { tag=>"mo", output=>"⌈", tex=>"lceil", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="757">757</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "~|" => { tag=>"mo", output=>"⌉", tex=>"rceil", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="758">758</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "CC" => { tag=>"mo", output=>"ℂ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="759">759</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "NN" => { tag=>"mo", output=>"ℕ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="760">760</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "QQ" => { tag=>"mo", output=>"ℚ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="761">761</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "RR" => { tag=>"mo", output=>"ℝ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="762">762</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "ZZ" => { tag=>"mo", output=>"ℤ", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="763">763</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "f" => { tag=>"mi", output=>"f", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="764">764</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "g" => { tag=>"mi", output=>"g", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="765">765</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="766">766</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # standard functions </td> </tr> <tr> <td class="h" > <a name="767">767</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "lim" => { tag=>"mo", output=>"lim", tex=>'', ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="768">768</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "Lim" => { tag=>"mo", output=>"Lim", tex=>'', ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="769">769</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sin" => { tag=>"mo", output=>"sin", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="770">770</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "cos" => { tag=>"mo", output=>"cos", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="771">771</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "tan" => { tag=>"mo", output=>"tan", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="772">772</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sinh" => { tag=>"mo", output=>"sinh", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="773">773</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "cosh" => { tag=>"mo", output=>"cosh", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="774">774</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "tanh" => { tag=>"mo", output=>"tanh", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="775">775</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "cot" => { tag=>"mo", output=>"cot", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="776">776</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sec" => { tag=>"mo", output=>"sec", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="777">777</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "csc" => { tag=>"mo", output=>"csc", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="778">778</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "log" => { tag=>"mo", output=>"log", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="779">779</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "ln" => { tag=>"mo", output=>"ln", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="780">780</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "det" => { tag=>"mo", output=>"det", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="781">781</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "dim" => { tag=>"mo", output=>"dim", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="782">782</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mod" => { tag=>"mo", output=>"mod", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="783">783</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "gcd" => { tag=>"mo", output=>"gcd", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="784">784</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "lcm" => { tag=>"mo", output=>"lcm", tex=>'', ttype=>"UNARY", func=>"true" }, </td> </tr> <tr> <td class="h" > <a name="785">785</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "lub" => { tag=>"mo", output=>"lub", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="786">786</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "glb" => { tag=>"mo", output=>"glb", tex=>'', ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="787">787</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "min" => { tag=>"mo", output=>"min", tex=>'', ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="788">788</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "max" => { tag=>"mo", output=>"max", tex=>'', ttype=>"UNDEROVER" }, </td> </tr> <tr> <td class="h" > <a name="789">789</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="790">790</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # arrows </td> </tr> <tr> <td class="h" > <a name="791">791</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "uarr" => { tag=>"mo", output=>"↑", tex=>"uparrow", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="792">792</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "darr" => { tag=>"mo", output=>"↓", tex=>"downarrow", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="793">793</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "rarr" => { tag=>"mo", output=>"→", tex=>"rightarrow", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="794">794</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "->" => { tag=>"mo", output=>"→", tex=>"to", ttype=>"CONST", latex=>1 }, </td> </tr> <tr> <td class="h" > <a name="795">795</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "|->" => { tag=>"mo", output=>"↦", tex=>"mapsto", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="796">796</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "larr" => { tag=>"mo", output=>"←", tex=>"leftarrow", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="797">797</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "harr" => { tag=>"mo", output=>"↔", tex=>"leftrightarrow", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="798">798</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "rArr" => { tag=>"mo", output=>"⇒", tex=>"Rightarrow", ttype=>"CONST", latex=>1 }, </td> </tr> <tr> <td class="h" > <a name="799">799</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "lArr" => { tag=>"mo", output=>"⇐", tex=>"Leftarrow", ttype=>"CONST" }, </td> </tr> <tr> <td class="h" > <a name="800">800</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "hArr" => { tag=>"mo", output=>"⇔", tex=>"Leftrightarrow", ttype=>"CONST", latex=>1 }, </td> </tr> <tr> <td class="h" > <a name="801">801</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="802">802</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # commands with argument </td> </tr> <tr> <td class="h" > <a name="803">803</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="804">804</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "hat" => { tag=>"mover", output=>"^", tex=>'', ttype=>"UNARY", acc=>"true" }, </td> </tr> <tr> <td class="h" > <a name="805">805</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "bar" => { tag=>"mover", output=>"¯", tex=>"overline", ttype=>"UNARY", acc=>"true" }, </td> </tr> <tr> <td class="h" > <a name="806">806</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "vec" => { tag=>"mover", output=>"→", tex=>'', ttype=>"UNARY", acc=>"true" }, </td> </tr> <tr> <td class="h" > <a name="807">807</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "dot" => { tag=>"mover", output=>".", tex=>'', ttype=>"UNARY", acc=>"true" }, </td> </tr> <tr> <td class="h" > <a name="808">808</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "ddot" => { tag=>"mover", output=>"..", tex=>'', ttype=>"UNARY", acc=>"true" }, </td> </tr> <tr> <td class="h" > <a name="809">809</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "ul" => { tag=>"munder", output=>"̲", tex=>"underline", ttype=>"UNARY", acc=>"true" }, </td> </tr> <tr> <td class="h" > <a name="810">810</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="811">811</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "bb" => { tag=>"mstyle", atname=>"fontweight", atval=>"bold", output=>"bb", tex=>'', ttype=>"UNARY" }, </td> </tr> <tr> <td class="h" > <a name="812">812</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mathbf" => { tag=>"mstyle", atname=>"fontweight", atval=>"bold", output=>"mathbf", tex=>'', ttype=>"UNARY" }, </td> </tr> <tr> <td class="h" > <a name="813">813</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "sf" => { tag=>"mstyle", atname=>"fontfamily", atval=>"sans-serif", output=>"sf", tex=>'', ttype=>"UNARY" }, </td> </tr> <tr> <td class="h" > <a name="814">814</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mathsf" => { tag=>"mstyle", atname=>"fontfamily", atval=>"sans-serif", output=>"mathsf", tex=>'', ttype=>"UNARY" }, </td> </tr> <tr> <td class="h" > <a name="815">815</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "bbb" => { tag=>"mstyle", atname=>"mathvariant", atval=>"double-struck", output=>"bbb", tex=>'', ttype=>"UNARY", codes=>$AMbbb }, </td> </tr> <tr> <td class="h" > <a name="816">816</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mathbb" => { tag=>"mstyle", atname=>"mathvariant", atval=>"double-struck", output=>"mathbb", tex=>'', ttype=>"UNARY", codes=>$AMbbb }, </td> </tr> <tr> <td class="h" > <a name="817">817</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "cc" => { tag=>"mstyle", atname=>"mathvariant", atval=>"script", output=>"cc", tex=>'', ttype=>"UNARY", codes=>$AMcal }, </td> </tr> <tr> <td class="h" > <a name="818">818</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mathcal" => { tag=>"mstyle", atname=>"mathvariant", atval=>"script", output=>"mathcal", tex=>'', ttype=>"UNARY", codes=>$AMcal }, </td> </tr> <tr> <td class="h" > <a name="819">819</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "tt" => { tag=>"mstyle", atname=>"fontfamily", atval=>"monospace", output=>"tt", tex=>'', ttype=>"UNARY" }, </td> </tr> <tr> <td class="h" > <a name="820">820</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mathtt" => { tag=>"mstyle", atname=>"fontfamily", atval=>"monospace", output=>"mathtt", tex=>'', ttype=>"UNARY" }, </td> </tr> <tr> <td class="h" > <a name="821">821</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "fr" => { tag=>"mstyle", atname=>"mathvariant", atval=>"fraktur", output=>"fr", tex=>'', ttype=>"UNARY", codes=>$AMfrk }, </td> </tr> <tr> <td class="h" > <a name="822">822</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "mathfrak" => { tag=>"mstyle", atname=>"mathvariant", atval=>"fraktur", output=>"mathfrak", tex=>'', ttype=>"UNARY", codes=>$AMfrk }, </td> </tr> <tr> <td class="h" > <a name="823">823</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ); </td> </tr> <tr> <td class="h" > <a name="824">824</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="825">825</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Preprocess AMSymbol for lexer regular expression </td> </tr> <tr> <td class="h" > <a name="826">826</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Preprocess AMSymbol for tex input </td> </tr> <tr> <td class="h" > <a name="827">827</a> </td> <td class="c3" > 1 </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#827-1"> 33 </a> </td> <td >   </td> <td >   </td> <td > 268 </td> <td class="s"> my %AMTexSym = map(($AMSymbol{$_}{tex} || $_, $_), </td> </tr> <tr> <td class="h" > <a name="828">828</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> grep($AMSymbol{$_}{tex}, keys %AMSymbol)); </td> </tr> <tr> <td class="h" > <a name="829">829</a> </td> <td class="c3" > 1689 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7104 </td> <td class="s"> my $Ident_RE = join '|', map("\Q$_\E", </td> </tr> <tr> <td class="h" > <a name="830">830</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 55 </td> <td class="s"> sort {length($b) - length($a)} (keys %AMSymbol, </td> </tr> <tr> <td class="h" > <a name="831">831</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> keys %AMTexSym)); </td> </tr> <tr> <td class="h" > <a name="832">832</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="833">833</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _getSymbol_ : method { </td> </tr> <tr> <td class="h" > <a name="834">834</a> </td> <td class="c3" > 10482 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#834-1"> 10482 </a> </td> <td >   </td> <td > 20157 </td> <td class="s"> my ($self, $str) = @_; </td> </tr> <tr> <td class="h" > <a name="835">835</a> </td> <td class="c3" > 10482 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 21594 </td> <td class="s"> for ($str) { </td> </tr> <tr> <td class="h" > <a name="836">836</a> </td> <td class="c3" > 10482 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#836-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#836-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 86743 </td> <td class="s"> /^(\d+(\.\d+)?)/ || /^(\.\d+)/ </td> </tr> <tr> <td class="h" > <a name="837">837</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> and return $1, {tag=>'mn', output=>$1, ttype=>'CONST'}; </td> </tr> <tr> <td class="h" > <a name="838">838</a> </td> <td class="c3" > 9560 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#838-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#838-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 58463 </td> <td class="s"> $self->{Definition_RE} && /^($self->{Definition_RE})/ and </td> </tr> <tr> <td class="h" > <a name="839">839</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> return $1, $self->{Definitions}{$1}; </td> </tr> <tr> <td class="h" > <a name="840">840</a> </td> <td class="c3" > 9532 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#840-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 57048 </td> <td class="s"> /^($Ident_RE)/o and </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="841">841</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> return $1,$AMTexSym{$1} ? $AMSymbol{$AMTexSym{$1}} : $AMSymbol{$1}; </td> </tr> <tr> <td class="h" > <a name="842">842</a> </td> <td class="c3" > 5070 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#842-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 31869 </td> <td class="s"> /^([A-Za-z])/ and </td> </tr> <tr> <td class="h" > <a name="843">843</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> return $1, {tag=>'mi', output=>$1, ttype=>'CONST'}; </td> </tr> <tr> <td class="h" > <a name="844">844</a> </td> <td class="c3" > 2924 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#844-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#844-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 39037 </td> <td class="s"> /^(.)/ and </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="845">845</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> return $1 eq '-' && defined $self->{previousSymbol} && </td> </tr> <tr> <td class="h" > <a name="846">846</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->{previousSymbol} eq 'INFIX' ? </td> </tr> <tr> <td class="h" > <a name="847">847</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($1, {tag=>'mo', output=>$1, ttype=>'UNARY', func=>"true"} ) : </td> </tr> <tr> <td class="h" > <a name="848">848</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($1, {tag=>'mo', output=>$1, ttype=>'CONST'}); </td> </tr> <tr> <td class="h" > <a name="849">849</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="850">850</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="851">851</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="852">852</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Used so that Text::ASCIIMathML::Node can get access to the symbol table </td> </tr> <tr> <td class="h" > <a name="853">853</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _get_amsymbol_ { </td> </tr> <tr> <td class="h" > <a name="854">854</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#854-1"> 1 </a> </td> <td >   </td> <td > 3 </td> <td class="s"> return \%AMSymbol; </td> </tr> <tr> <td class="h" > <a name="855">855</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="856">856</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="857">857</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="858">858</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Parses an E expression </td> </tr> <tr> <td class="h" > <a name="859">859</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: string to parse, whether to look for a right bracket </td> </tr> <tr> <td class="h" > <a name="860">860</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: parsed node (if successful), remaining unparsed string </td> </tr> <tr> <td class="h" > <a name="861">861</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _parseExpr : method { </td> </tr> <tr> <td class="h" > <a name="862">862</a> </td> <td class="c3" > 994 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#862-1"> 994 </a> </td> <td >   </td> <td > 1984 </td> <td class="s"> my ($self, $str, $rightbracket) = @_; </td> </tr> <tr> <td class="h" > <a name="863">863</a> </td> <td class="c3" > 994 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3000 </td> <td class="s"> my $newFrag = $self->_createDocumentFragment(); </td> </tr> <tr> <td class="h" > <a name="864">864</a> </td> <td class="c3" > 994 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 9882 </td> <td class="s"> my ($node, $input, $symbol); </td> </tr> <tr> <td class="h" > <a name="865">865</a> </td> <td class="c3" > 994 </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#865-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 1107 </td> <td class="s"> do { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-2"> 66 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-3"> 66 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="866">866</a> </td> <td class="c3" > 2335 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5824 </td> <td class="s"> $str = _removeCharsAndBlanks($str, 0); </td> </tr> <tr> <td class="h" > <a name="867">867</a> </td> <td class="c3" > 2335 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 8684 </td> <td class="s"> ($node, $str) = $self->_parseIexpr($str); </td> </tr> <tr> <td class="h" > <a name="868">868</a> </td> <td class="c3" > 2335 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 6963 </td> <td class="s"> ($input, $symbol) = $self->_getSymbol($str); </td> </tr> <tr> <td class="h" > <a name="869">869</a> </td> <td class="c3" > 2335 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#869-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#869-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 18720 </td> <td class="s"> if (defined $symbol && $symbol->{ttype} eq 'INFIX' && $input eq '/') { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-2"> 66 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="870">870</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 222 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="871">871</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 244 </td> <td class="s"> my @result = $self->_parseIexpr($str); </td> </tr> <tr> <td class="h" > <a name="872">872</a> </td> <td class="c3" > 96 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#872-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 298 </td> <td class="s"> if ($result[0]) { </td> </tr> <tr> <td class="h" > <a name="873">873</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 263 </td> <td class="s"> _removeBrackets($result[0]); </td> </tr> <tr> <td class="h" > <a name="874">874</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="875">875</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { # show box in place of missing argument </td> </tr> <tr> <td class="h" > <a name="876">876</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> $result[0] = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="877">877</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode('A1;')); </td> </tr> <tr> <td class="h" > <a name="878">878</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="879">879</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 184 </td> <td class="s"> $str = $result[1]; </td> </tr> <tr> <td class="h" > <a name="880">880</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 191 </td> <td class="s"> _removeBrackets($node); </td> </tr> <tr> <td class="h" > <a name="881">881</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 270 </td> <td class="s"> $node = $self->_createMmlNode($symbol->{tag}, $node); </td> </tr> <tr> <td class="h" > <a name="882">882</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 275 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="883">883</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 207 </td> <td class="s"> $newFrag->appendChild($node); </td> </tr> <tr> <td class="h" > <a name="884">884</a> </td> <td class="c3" > 96 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 213 </td> <td class="s"> ($input, $symbol) = $self->_getSymbol($str); </td> </tr> <tr> <td class="h" > <a name="885">885</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="886">886</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> elsif (defined $node) { </td> </tr> <tr> <td class="h" > <a name="887">887</a> </td> <td class="c3" > 2217 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5615 </td> <td class="s"> $newFrag->appendChild($node); </td> </tr> <tr> <td class="h" > <a name="888">888</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="889">889</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } while (defined $symbol && ($symbol->{ttype} ne 'RIGHTBRACKET' && </td> </tr> <tr> <td class="h" > <a name="890">890</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($symbol->{ttype} ne 'LEFTRIGHT' || </td> </tr> <tr> <td class="h" > <a name="891">891</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $rightbracket) </td> </tr> <tr> <td class="h" > <a name="892">892</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> || $self->{nestingDepth} == 0) && </td> </tr> <tr> <td class="h" > <a name="893">893</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $symbol->{output} ne ''); </td> </tr> <tr> <td class="h" > <a name="894">894</a> </td> <td class="c3" > 994 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#894-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#894-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 5283 </td> <td class="s"> if (defined $symbol && $symbol->{ttype} =~ /RIGHTBRACKET|LEFTRIGHT/) { </td> </tr> <tr> <td class="h" > <a name="895">895</a> </td> <td class="c3" > 434 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1233 </td> <td class="s"> my @childNodes = $newFrag->childNodes; </td> </tr> <tr> <td class="h" > <a name="896">896</a> </td> <td class="c3" > 434 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#896-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#896-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 2310 </td> <td class="s"> if (@childNodes > 1 && </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-3"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="897">897</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $childNodes[-1]->nodeName eq 'mrow' && </td> </tr> <tr> <td class="h" > <a name="898">898</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $childNodes[-2]->nodeName eq 'mo' && </td> </tr> <tr> <td class="h" > <a name="899">899</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $childNodes[-2]->firstChild->nodeValue eq ',') { # matrix </td> </tr> <tr> <td class="h" > <a name="900">900</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 64 </td> <td class="s"> my $right = $childNodes[-1]->lastChild->firstChild->nodeValue; </td> </tr> <tr> <td class="h" > <a name="901">901</a> </td> <td class="c3" > 18 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#901-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 96 </td> <td class="s"> if ($right =~ /[\)\]]/) { </td> </tr> <tr> <td class="h" > <a name="902">902</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 61 </td> <td class="s"> my $left = $childNodes[-1]->firstChild->firstChild->nodeValue; </td> </tr> <tr> <td class="h" > <a name="903">903</a> </td> <td class="c3" > 18 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#903-1"> 50 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#903-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 190 </td> <td class="s"> if ("$left$right" =~ /^\(\)$/ && $symbol->{output} ne '}' || </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-2"> 66 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="904">904</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "$left$right" =~ /^\[\]$/) { </td> </tr> <tr> <td class="h" > <a name="905">905</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 30 </td> <td class="s"> my @pos; # positions of commas </td> </tr> <tr> <td class="h" > <a name="906">906</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 29 </td> <td class="s"> my $matrix = 1; </td> </tr> <tr> <td class="h" > <a name="907">907</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 29 </td> <td class="s"> my $m = @childNodes; </td> </tr> <tr> <td class="h" > <a name="908">908</a> </td> <td class="c3" > 18 </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#908-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 103 </td> <td class="s"> for (my $i=0; $matrix && $i < $m; $i += 2) { </td> </tr> <tr> <td class="h" > <a name="909">909</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 67 </td> <td class="s"> $pos[$i] = []; </td> </tr> <tr> <td class="h" > <a name="910">910</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 55 </td> <td class="s"> $node = $childNodes[$i]; </td> </tr> <tr> <td class="h" > <a name="911">911</a> </td> <td class="c3" > 38 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#911-1"> 50 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#911-1"> 33 </a> </td> <td >   </td> <td >   </td> <td > 117 </td> <td class="s"> $matrix = </td> </tr> <tr> <td class="h" > <a name="912">912</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $node->nodeName eq 'mrow' && </td> </tr> <tr> <td class="h" > <a name="913">913</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($i == $m-1 || </td> </tr> <tr> <td class="h" > <a name="914">914</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $node->nextSibling->nodeName eq 'mo' && </td> </tr> <tr> <td class="h" > <a name="915">915</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $node->nextSibling->firstChild->nodeValue eq ',')&& </td> </tr> <tr> <td class="h" > <a name="916">916</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $node->firstChild->firstChild->nodeValue eq $left&& </td> </tr> <tr> <td class="h" > <a name="917">917</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $node->lastChild->firstChild->nodeValue eq $right </td> </tr> <tr> <td class="h" > <a name="918">918</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $matrix; </td> </tr> <tr> <td class="h" > <a name="919">919</a> </td> <td class="c3" > 38 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#919-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 116 </td> <td class="s"> if ($matrix) { </td> </tr> <tr> <td class="h" > <a name="920">920</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 117 </td> <td class="s"> for (my $j=0; $j<($node->childNodes); $j++) { </td> </tr> <tr> <td class="h" > <a name="921">921</a> </td> <td class="c3" > 210 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#921-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 413 </td> <td class="s"> if (($node->childNodes)[$j]->firstChild-> </td> </tr> <tr> <td class="h" > <a name="922">922</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> nodeValue eq ',') { </td> </tr> <tr> <td class="h" > <a name="923">923</a> </td> <td class="c3" > 40 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 46 </td> <td class="s"> push @{$pos[$i]}, $j; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 40 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 155 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="924">924</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="925">925</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="926">926</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="927">927</a> </td> <td class="c3" > 38 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#927-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#927-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 225 </td> <td class="s"> if ($matrix && $i > 1) { </td> </tr> <tr> <td class="h" > <a name="928">928</a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 29 </td> <td class="s"> $matrix = @{$pos[$i]} == @{$pos[$i-2]}; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 39 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 113 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="929">929</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="930">930</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="931">931</a> </td> <td class="c3" > 18 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#931-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 41 </td> <td class="s"> if ($matrix) { </td> </tr> <tr> <td class="h" > <a name="932">932</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 44 </td> <td class="s"> my $table = $self->_createDocumentFragment(); </td> </tr> <tr> <td class="h" > <a name="933">933</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 72 </td> <td class="s"> for (my $i=0; $i<$m; $i += 2) { </td> </tr> <tr> <td class="h" > <a name="934">934</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 130 </td> <td class="s"> my $row = $self->_createDocumentFragment(); </td> </tr> <tr> <td class="h" > <a name="935">935</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 91 </td> <td class="s"> my $frag = $self->_createDocumentFragment(); </td> </tr> <tr> <td class="h" > <a name="936">936</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # <mrow>(-,-,...,-,-)</mrow> </td> </tr> <tr> <td class="h" > <a name="937">937</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 83 </td> <td class="s"> $node = $newFrag->firstChild; </td> </tr> <tr> <td class="h" > <a name="938">938</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 87 </td> <td class="s"> my $n = $node->childNodes; </td> </tr> <tr> <td class="h" > <a name="939">939</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 53 </td> <td class="s"> my $k = 0; </td> </tr> <tr> <td class="h" > <a name="940">940</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 88 </td> <td class="s"> $node->removeChild($node->firstChild); # remove ( </td> </tr> <tr> <td class="h" > <a name="941">941</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 127 </td> <td class="s"> for (my $j=1; $j<$n-1; $j++) { </td> </tr> <tr> <td class="h" > <a name="942">942</a> </td> <td class="c3" > 134 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#942-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#942-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 144 </td> <td class="s"> if ($k < @{$pos[$i]} && $j == $pos[$i][$k]) { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 134 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 542 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="943">943</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # remove , </td> </tr> <tr> <td class="h" > <a name="944">944</a> </td> <td class="c3" > 40 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 111 </td> <td class="s"> $row->appendChild </td> </tr> <tr> <td class="h" > <a name="945">945</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($self->_createMmlNode('mtd', $frag)); </td> </tr> <tr> <td class="h" > <a name="946">946</a> </td> <td class="c3" > 40 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 100 </td> <td class="s"> $frag = $self->_createDocumentFragment(); </td> </tr> <tr> <td class="h" > <a name="947">947</a> </td> <td class="c3" > 40 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 114 </td> <td class="s"> $k++; </td> </tr> <tr> <td class="h" > <a name="948">948</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="949">949</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="950">950</a> </td> <td class="c3" > 94 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 204 </td> <td class="s"> $frag->appendChild($node->firstChild); </td> </tr> <tr> <td class="h" > <a name="951">951</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="952">952</a> </td> <td class="c3" > 134 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 307 </td> <td class="s"> $node->removeChild($node->firstChild); </td> </tr> <tr> <td class="h" > <a name="953">953</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="954">954</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 93 </td> <td class="s"> $row->appendChild </td> </tr> <tr> <td class="h" > <a name="955">955</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($self->_createMmlNode('mtd', $frag)); </td> </tr> <tr> <td class="h" > <a name="956">956</a> </td> <td class="c3" > 38 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#956-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 86 </td> <td class="s"> if ($newFrag->childNodes > 2) { </td> </tr> <tr> <td class="h" > <a name="957">957</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # remove <mrow>)</mrow> </td> </tr> <tr> <td class="h" > <a name="958">958</a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 53 </td> <td class="s"> $newFrag->removeChild($newFrag->firstChild); </td> </tr> <tr> <td class="h" > <a name="959">959</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # remove <mo>,</mo> </td> </tr> <tr> <td class="h" > <a name="960">960</a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 65 </td> <td class="s"> $newFrag->removeChild($newFrag->firstChild); </td> </tr> <tr> <td class="h" > <a name="961">961</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="962">962</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $table->appendChild </td> </tr> <tr> <td class="h" > <a name="963">963</a> </td> <td class="c3" > 38 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 115 </td> <td class="s"> ($self->_createMmlNode('mtr', $row)); </td> </tr> <tr> <td class="h" > <a name="964">964</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="965">965</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 52 </td> <td class="s"> $node = $self->_createMmlNode('mtable', $table); </td> </tr> <tr> <td class="h" > <a name="966">966</a> </td> <td class="c3" > 18 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#966-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 83 </td> <td class="s"> $node->setAttribute('columnalign', 'left') </td> </tr> <tr> <td class="h" > <a name="967">967</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $symbol->{invisible}; </td> </tr> <tr> <td class="h" > <a name="968">968</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 60 </td> <td class="s"> $newFrag->replaceChild($node, $newFrag->firstChild); </td> </tr> <tr> <td class="h" > <a name="969">969</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="970">970</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="971">971</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="972">972</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="973">973</a> </td> <td class="c3" > 434 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1170 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="974">974</a> </td> <td class="c3" > 434 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#974-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1743 </td> <td class="s"> if (! $symbol->{invisible}) { </td> </tr> <tr> <td class="h" > <a name="975">975</a> </td> <td class="c3" > 390 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1150 </td> <td class="s"> $node = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="976">976</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode($symbol->{output})); </td> </tr> <tr> <td class="h" > <a name="977">977</a> </td> <td class="c3" > 390 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 934 </td> <td class="s"> $newFrag->appendChild($node); </td> </tr> <tr> <td class="h" > <a name="978">978</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="979">979</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="980">980</a> </td> <td class="c3" > 994 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3805 </td> <td class="s"> return $newFrag, $str; </td> </tr> <tr> <td class="h" > <a name="981">981</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="982">982</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="983">983</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Parses an I expression </td> </tr> <tr> <td class="h" > <a name="984">984</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: string to parse </td> </tr> <tr> <td class="h" > <a name="985">985</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: parsed node (if successful), remaining unparsed string </td> </tr> <tr> <td class="h" > <a name="986">986</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _parseIexpr : method { </td> </tr> <tr> <td class="h" > <a name="987">987</a> </td> <td class="c3" > 2431 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#987-1"> 2431 </a> </td> <td >   </td> <td > 6432 </td> <td class="s"> my ($self, $str) = @_; </td> </tr> <tr> <td class="h" > <a name="988">988</a> </td> <td class="c3" > 2431 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4376 </td> <td class="s"> $str = _removeCharsAndBlanks($str, 0); </td> </tr> <tr> <td class="h" > <a name="989">989</a> </td> <td class="c3" > 2431 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 6322 </td> <td class="s"> my ($in1, $sym1) = $self->_getSymbol($str); </td> </tr> <tr> <td class="h" > <a name="990">990</a> </td> <td class="c3" > 2431 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3433 </td> <td class="s"> my $node; </td> </tr> <tr> <td class="h" > <a name="991">991</a> </td> <td class="c3" > 2431 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 6012 </td> <td class="s"> ($node, $str) = $self->_parseSexpr($str); </td> </tr> <tr> <td class="h" > <a name="992">992</a> </td> <td class="c3" > 2431 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7663 </td> <td class="s"> my ($input, $symbol) = $self->_getSymbol($str); </td> </tr> <tr> <td class="h" > <a name="993">993</a> </td> <td class="c3" > 2431 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#993-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#993-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 22163 </td> <td class="s"> if (defined $symbol && $symbol->{ttype} eq 'INFIX' && $input ne '/') { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="994">994</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # if (symbol.input == "/") result = AMparseIexpr(str); else ... </td> </tr> <tr> <td class="h" > <a name="995">995</a> </td> <td class="c3" > 224 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 590 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="996">996</a> </td> <td class="c3" > 224 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 621 </td> <td class="s"> my @result = $self->_parseSexpr($str); </td> </tr> <tr> <td class="h" > <a name="997">997</a> </td> <td class="c3" > 224 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#997-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 661 </td> <td class="s"> if ($result[0]) { </td> </tr> <tr> <td class="h" > <a name="998">998</a> </td> <td class="c3" > 224 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 805 </td> <td class="s"> _removeBrackets($result[0]); </td> </tr> <tr> <td class="h" > <a name="999">999</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1000">1000</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { # show box in place of missing argument </td> </tr> <tr> <td class="h" > <a name="1001">1001</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> $result[0] = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1002">1002</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode("A1;")); </td> </tr> <tr> <td class="h" > <a name="1003">1003</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1004">1004</a> </td> <td class="c3" > 224 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 599 </td> <td class="s"> $str = $result[1]; </td> </tr> <tr> <td class="h" > <a name="1005">1005</a> </td> <td class="c3" > 224 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1005-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 887 </td> <td class="s"> if ($input eq '_') { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1006">1006</a> </td> <td class="c3" > 134 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 601 </td> <td class="s"> my ($in2, $sym2) = $self->_getSymbol($str); </td> </tr> <tr> <td class="h" > <a name="1007">1007</a> </td> <td class="c3" > 134 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 330 </td> <td class="s"> my $underover = $sym1->{ttype} eq 'UNDEROVER'; </td> </tr> <tr> <td class="h" > <a name="1008">1008</a> </td> <td class="c3" > 134 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1008-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 442 </td> <td class="s"> if ($in2 eq '^') { </td> </tr> <tr> <td class="h" > <a name="1009">1009</a> </td> <td class="c3" > 54 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 165 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $in2); </td> </tr> <tr> <td class="h" > <a name="1010">1010</a> </td> <td class="c3" > 54 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 164 </td> <td class="s"> my @res2 = $self->_parseSexpr($str); </td> </tr> <tr> <td class="h" > <a name="1011">1011</a> </td> <td class="c3" > 54 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 373 </td> <td class="s"> _removeBrackets($res2[0]); </td> </tr> <tr> <td class="h" > <a name="1012">1012</a> </td> <td class="c3" > 54 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 118 </td> <td class="s"> $str = $res2[1]; </td> </tr> <tr> <td class="h" > <a name="1013">1013</a> </td> <td class="c3" > 54 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1013-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 231 </td> <td class="s"> $node = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1014">1014</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($underover ? 'munderover' : 'msubsup', $node); </td> </tr> <tr> <td class="h" > <a name="1015">1015</a> </td> <td class="c3" > 54 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 156 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1016">1016</a> </td> <td class="c3" > 54 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 265 </td> <td class="s"> $node->appendChild($res2[0]); </td> </tr> <tr> <td class="h" > <a name="1017">1017</a> </td> <td class="c3" > 54 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 116 </td> <td class="s"> $node = $self->_createMmlNode('mrow',$node); # so sum does not stretch </td> </tr> <tr> <td class="h" > <a name="1018">1018</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1019">1019</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="1020">1020</a> </td> <td class="c3" > 80 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1020-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 249 </td> <td class="s"> $node = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1021">1021</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($underover ? 'munder' : 'msub', $node); </td> </tr> <tr> <td class="h" > <a name="1022">1022</a> </td> <td class="c3" > 80 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 205 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1023">1023</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1024">1024</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1025">1025</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> elsif ($input eq '^') { </td> </tr> <tr> <td class="h" > <a name="1026">1026</a> </td> <td class="c3" > 90 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 214 </td> <td class="s"> my ($in2, $sym2) = $self->_getSymbol($str); </td> </tr> <tr> <td class="h" > <a name="1027">1027</a> </td> <td class="c3" > 90 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 225 </td> <td class="s"> my $underover = $sym1->{ttype} eq 'UNDEROVER'; </td> </tr> <tr> <td class="h" > <a name="1028">1028</a> </td> <td class="c3" > 90 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1028-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 184 </td> <td class="s"> if ($in2 eq '_') { </td> </tr> <tr> <td class="h" > <a name="1029">1029</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 8 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $in2); </td> </tr> <tr> <td class="h" > <a name="1030">1030</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7 </td> <td class="s"> my @res2 = $self->_parseSexpr($str); </td> </tr> <tr> <td class="h" > <a name="1031">1031</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5 </td> <td class="s"> _removeBrackets($res2[0]); </td> </tr> <tr> <td class="h" > <a name="1032">1032</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3 </td> <td class="s"> $str = $res2[1]; </td> </tr> <tr> <td class="h" > <a name="1033">1033</a> </td> <td class="c3" > 2 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1033-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 14 </td> <td class="s"> $node = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1034">1034</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($underover ? 'munderover' : 'msubsup', $node); </td> </tr> <tr> <td class="h" > <a name="1035">1035</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5 </td> <td class="s"> $node->appendChild($res2[0]); </td> </tr> <tr> <td class="h" > <a name="1036">1036</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1037">1037</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 6 </td> <td class="s"> $node = $self->_createMmlNode('mrow',$node); # so sum does not stretch </td> </tr> <tr> <td class="h" > <a name="1038">1038</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1039">1039</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="1040">1040</a> </td> <td class="c3" > 88 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1040-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 250 </td> <td class="s"> $node = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1041">1041</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($underover ? 'mover' : 'msup', $node); </td> </tr> <tr> <td class="h" > <a name="1042">1042</a> </td> <td class="c3" > 88 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 194 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1043">1043</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1044">1044</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1045">1045</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="1046">1046</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> $node = $self->_createMmlNode($symbol->{tag}, $node); </td> </tr> <tr> <td class="h" > <a name="1047">1047</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1048">1048</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1049">1049</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1050">1050</a> </td> <td class="c3" > 2431 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 10306 </td> <td class="s"> return $node, $str; </td> </tr> <tr> <td class="h" > <a name="1051">1051</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1052">1052</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1053">1053</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Parses an S expression </td> </tr> <tr> <td class="h" > <a name="1054">1054</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: string to parse </td> </tr> <tr> <td class="h" > <a name="1055">1055</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: parsed node (if successful), remaining unparsed string </td> </tr> <tr> <td class="h" > <a name="1056">1056</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _parseSexpr : method { </td> </tr> <tr> <td class="h" > <a name="1057">1057</a> </td> <td class="c3" > 2941 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1057-1"> 2941 </a> </td> <td >   </td> <td > 17586 </td> <td class="s"> my ($self, $str) = @_; </td> </tr> <tr> <td class="h" > <a name="1058">1058</a> </td> <td class="c3" > 2941 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 24516 </td> <td class="s"> my $newFrag = $self->_createDocumentFragment(); </td> </tr> <tr> <td class="h" > <a name="1059">1059</a> </td> <td class="c3" > 2941 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 6524 </td> <td class="s"> $str = _removeCharsAndBlanks($str, 0); </td> </tr> <tr> <td class="h" > <a name="1060">1060</a> </td> <td class="c3" > 2941 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7787 </td> <td class="s"> my ($input, $symbol) = $self->_getSymbol($str); </td> </tr> <tr> <td class="h" > <a name="1061">1061</a> </td> <td class="c3" > 2941 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1061-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1061-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 31538 </td> <td class="s"> return (undef, $str) </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-2"> 66 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1062">1062</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if ! defined $symbol || </td> </tr> <tr> <td class="h" > <a name="1063">1063</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $symbol->{ttype} eq 'RIGHTBRACKET' && $self->{nestingDepth} > 0; </td> </tr> <tr> <td class="h" > <a name="1064">1064</a> </td> <td class="c3" > 2897 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1064-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 8364 </td> <td class="s"> if ($symbol->{ttype} eq 'DEFINITION') { </td> </tr> <tr> <td class="h" > <a name="1065">1065</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 83 </td> <td class="s"> $str = $symbol->{output} . _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1066">1066</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 62 </td> <td class="s"> ($input, $symbol) = $self->_getSymbol($str); </td> </tr> <tr> <td class="h" > <a name="1067">1067</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1068">1068</a> </td> <td class="c3" > 2897 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4225 </td> <td class="s"> my $ttype = $symbol->{ttype}; </td> </tr> <tr> <td class="h" > <a name="1069">1069</a> </td> <td class="c3" > 2897 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1069-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 16652 </td> <td class="s"> if ($ttype =~ /UNDEROVER|CONST/) { </td> </tr> <tr> <td class="h" > <a name="1070">1070</a> </td> <td class="c3" > 2167 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5046 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1071">1071</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> return </td> </tr> <tr> <td class="h" > <a name="1072">1072</a> </td> <td class="c3" > 2167 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 8130 </td> <td class="s"> $self->_createMmlNode($symbol->{tag}, </td> </tr> <tr> <td class="h" > <a name="1073">1073</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->_createTextNode($symbol->{output})), </td> </tr> <tr> <td class="h" > <a name="1074">1074</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $str; </td> </tr> <tr> <td class="h" > <a name="1075">1075</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1076">1076</a> </td> <td class="c3" > 730 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1076-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 2379 </td> <td class="s"> if ($ttype eq 'LEFTBRACKET') { </td> </tr> <tr> <td class="h" > <a name="1077">1077</a> </td> <td class="c3" > 434 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 716 </td> <td class="s"> $self->{nestingDepth}++; </td> </tr> <tr> <td class="h" > <a name="1078">1078</a> </td> <td class="c3" > 434 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 922 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1079">1079</a> </td> <td class="c3" > 434 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1791 </td> <td class="s"> my @result = $self->_parseExpr($str, 1); </td> </tr> <tr> <td class="h" > <a name="1080">1080</a> </td> <td class="c3" > 434 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1348 </td> <td class="s"> $self->{nestingDepth}--; </td> </tr> <tr> <td class="h" > <a name="1081">1081</a> </td> <td class="c3" > 434 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 468 </td> <td class="s"> my $node; </td> </tr> <tr> <td class="h" > <a name="1082">1082</a> </td> <td class="c3" > 434 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1082-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 856 </td> <td class="s"> if ($symbol->{invisible}) { </td> </tr> <tr> <td class="h" > <a name="1083">1083</a> </td> <td class="c3" > 44 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 161 </td> <td class="s"> $node = $self->_createMmlNode('mrow', $result[0]); </td> </tr> <tr> <td class="h" > <a name="1084">1084</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1085">1085</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="1086">1086</a> </td> <td class="c3" > 390 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1611 </td> <td class="s"> $node = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1087">1087</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode($symbol->{output})); </td> </tr> <tr> <td class="h" > <a name="1088">1088</a> </td> <td class="c3" > 390 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 963 </td> <td class="s"> $node = $self->_createMmlNode('mrow', $node); </td> </tr> <tr> <td class="h" > <a name="1089">1089</a> </td> <td class="c3" > 390 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1018 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1090">1090</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1091">1091</a> </td> <td class="c3" > 434 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2954 </td> <td class="s"> return $node, $result[1]; </td> </tr> <tr> <td class="h" > <a name="1092">1092</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1093">1093</a> </td> <td class="c3" > 296 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1093-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 835 </td> <td class="s"> if ($ttype eq 'TEXT') { </td> </tr> <tr> <td class="h" > <a name="1094">1094</a> </td> <td class="c3" > 36 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1094-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 86 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input) unless $input eq '"'; </td> </tr> <tr> <td class="h" > <a name="1095">1095</a> </td> <td class="c3" > 36 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 43 </td> <td class="s"> my $st; </td> </tr> <tr> <td class="h" > <a name="1096">1096</a> </td> <td class="c3" > 36 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1096-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1096-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 378 </td> <td class="s"> ($input, $st) = ($1, $2) </td> </tr> <tr> <td class="h" > <a name="1097">1097</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $str =~ /^(\"()\")/ || $str =~ /^(\"((?:\\\\|\\\"|.)+?)\")/; </td> </tr> <tr> <td class="h" > <a name="1098">1098</a> </td> <td class="c3" > 36 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1098-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1098-1"> 33 </a> </td> <td >   </td> <td >   </td> <td > 311 </td> <td class="s"> ($input, $st) = ($1, $2) </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-2"> 66 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1099">1099</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if ($str =~ /^(\((.*?)\))/ || </td> </tr> <tr> <td class="h" > <a name="1100">1100</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $str =~ /^(\[(.*?)\])/ || </td> </tr> <tr> <td class="h" > <a name="1101">1101</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $str =~ /^(\{(.*?)\})/); </td> </tr> <tr> <td class="h" > <a name="1102">1102</a> </td> <td class="c3" > 36 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1102-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 66 </td> <td class="s"> ($input, $st) = ($str) x 2 unless defined $st; </td> </tr> <tr> <td class="h" > <a name="1103">1103</a> </td> <td class="c3" > 36 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1103-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 103 </td> <td class="s"> if (substr($st, 0, 1) eq ' ') { </td> </tr> <tr> <td class="h" > <a name="1104">1104</a> </td> <td class="c3" > 4 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 13 </td> <td class="s"> my $node = $self->_createElementMathML('mspace'); </td> </tr> <tr> <td class="h" > <a name="1105">1105</a> </td> <td class="c3" > 4 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 13 </td> <td class="s"> $node->setAttribute(width=>'1ex'); </td> </tr> <tr> <td class="h" > <a name="1106">1106</a> </td> <td class="c3" > 4 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 8 </td> <td class="s"> $newFrag->appendChild($node); </td> </tr> <tr> <td class="h" > <a name="1107">1107</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1108">1108</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $newFrag->appendChild </td> </tr> <tr> <td class="h" > <a name="1109">1109</a> </td> <td class="c3" > 36 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 100 </td> <td class="s"> ($self->_createMmlNode($symbol->{tag}, </td> </tr> <tr> <td class="h" > <a name="1110">1110</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->_createTextNode($st))); </td> </tr> <tr> <td class="h" > <a name="1111">1111</a> </td> <td class="c3" > 36 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1111-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 113 </td> <td class="s"> if (substr($st, -1) eq ' ') { </td> </tr> <tr> <td class="h" > <a name="1112">1112</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14 </td> <td class="s"> my $node = $self->_createElementMathML('mspace'); </td> </tr> <tr> <td class="h" > <a name="1113">1113</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14 </td> <td class="s"> $node->setAttribute(width=>'1ex'); </td> </tr> <tr> <td class="h" > <a name="1114">1114</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 11 </td> <td class="s"> $newFrag->appendChild($node); </td> </tr> <tr> <td class="h" > <a name="1115">1115</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1116">1116</a> </td> <td class="c3" > 36 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 119 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1117">1117</a> </td> <td class="c3" > 36 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 92 </td> <td class="s"> return $self->_createMmlNode('mrow', $newFrag), $str; </td> </tr> <tr> <td class="h" > <a name="1118">1118</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1119">1119</a> </td> <td class="c3" > 260 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1119-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 561 </td> <td class="s"> if ($ttype eq 'UNARY') { </td> </tr> <tr> <td class="h" > <a name="1120">1120</a> </td> <td class="c3" > 180 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 427 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1121">1121</a> </td> <td class="c3" > 180 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1297 </td> <td class="s"> my @result = $self->_parseSexpr($str); </td> </tr> <tr> <td class="h" > <a name="1122">1122</a> </td> <td class="c3" > 180 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1122-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 570 </td> <td class="s"> return ($self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1123">1123</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($symbol->{tag}, </td> </tr> <tr> <td class="h" > <a name="1124">1124</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->_createTextNode($symbol->{output})), $str) </td> </tr> <tr> <td class="h" > <a name="1125">1125</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if ! defined $result[0]; </td> </tr> <tr> <td class="h" > <a name="1126">1126</a> </td> <td class="c3" > 150 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1126-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 388 </td> <td class="s"> if ($symbol->{func}) { </td> </tr> <tr> <td class="h" > <a name="1127">1127</a> </td> <td class="c3" > 86 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1127-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 377 </td> <td class="s"> return ($self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1128">1128</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($symbol->{tag}, </td> </tr> <tr> <td class="h" > <a name="1129">1129</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->_createTextNode($symbol->{output})), $str) </td> </tr> <tr> <td class="h" > <a name="1130">1130</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $str =~ m!^[\^_/|]!; </td> </tr> <tr> <td class="h" > <a name="1131">1131</a> </td> <td class="c3" > 72 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 254 </td> <td class="s"> my $node = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1132">1132</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mrow', $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1133">1133</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($symbol->{tag}, $self->_createTextNode($symbol->{output}))); </td> </tr> <tr> <td class="h" > <a name="1134">1134</a> </td> <td class="c3" > 72 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 380 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1135">1135</a> </td> <td class="c3" > 72 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 365 </td> <td class="s"> return $node, $result[1]; </td> </tr> <tr> <td class="h" > <a name="1136">1136</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1137">1137</a> </td> <td class="c3" > 64 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 200 </td> <td class="s"> _removeBrackets($result[0]); </td> </tr> <tr> <td class="h" > <a name="1138">1138</a> </td> <td class="c3" > 64 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1138-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 179 </td> <td class="s"> if ($symbol->{acc}) { # accent </td> </tr> <tr> <td class="h" > <a name="1139">1139</a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 159 </td> <td class="s"> my $node = $self->_createMmlNode($symbol->{tag}, $result[0]); </td> </tr> <tr> <td class="h" > <a name="1140">1140</a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 53 </td> <td class="s"> $node->appendChild </td> </tr> <tr> <td class="h" > <a name="1141">1141</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1142">1142</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode($symbol->{output}))); </td> </tr> <tr> <td class="h" > <a name="1143">1143</a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 118 </td> <td class="s"> return $node, $result[1]; </td> </tr> <tr> <td class="h" > <a name="1144">1144</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1145">1145</a> </td> <td class="c3" > 44 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1145-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 138 </td> <td class="s"> if ($symbol->{atname}) { # font change command </td> </tr> <tr> <td class="h" > <a name="1146">1146</a> </td> <td class="c3" > 24 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1146-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1146-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 175 </td> <td class="s"> if ($self->{attr}{ForMoz} && $symbol->{codes}) { </td> </tr> <tr> <td class="h" > <a name="1147">1147</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 37 </td> <td class="s"> my @childNodes = $result[0]->childNodes; </td> </tr> <tr> <td class="h" > <a name="1148">1148</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 32 </td> <td class="s"> my $nodeName = $result[0]->nodeName; </td> </tr> <tr> <td class="h" > <a name="1149">1149</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 45 </td> <td class="s"> for (my $i=0; $i<@childNodes; $i++) { </td> </tr> <tr> <td class="h" > <a name="1150">1150</a> </td> <td class="c3" > 18 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1150-1"> 50 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1150-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 43 </td> <td class="s"> if ($childNodes[$i]->nodeName eq 'mi'||$nodeName eq 'mi') { </td> </tr> <tr> <td class="h" > <a name="1151">1151</a> </td> <td class="c3" > 18 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1151-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 73 </td> <td class="s"> my $st = $nodeName eq 'mi' ? </td> </tr> <tr> <td class="h" > <a name="1152">1152</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $result[0] ->firstChild->nodeValue : </td> </tr> <tr> <td class="h" > <a name="1153">1153</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $childNodes[$i]->firstChild->nodeValue; </td> </tr> <tr> <td class="h" > <a name="1154">1154</a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 89 </td> <td class="s"> $st =~ s/([A-Z])/sprintf "&#x%X;",$symbol->{codes}[ord($1)-65]/ge; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 18 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 105 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1155">1155</a> </td> <td class="c3" > 18 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1155-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 157 </td> <td class="s"> if ($nodeName eq 'mi') { </td> </tr> <tr> <td class="h" > <a name="1156">1156</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 12 </td> <td class="s"> $result[0] = $self->_createTextNode($st); </td> </tr> <tr> <td class="h" > <a name="1157">1157</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1158">1158</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="1159">1159</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 32 </td> <td class="s"> $result[0]->replaceChild </td> </tr> <tr> <td class="h" > <a name="1160">1160</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($self->_createTextNode($st), $childNodes[$i]); </td> </tr> <tr> <td class="h" > <a name="1161">1161</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1162">1162</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1163">1163</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1164">1164</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1165">1165</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 274 </td> <td class="s"> my $node = $self->_createMmlNode($symbol->{tag}, $result[0]); </td> </tr> <tr> <td class="h" > <a name="1166">1166</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 160 </td> <td class="s"> $node->setAttribute($symbol->{atname}=>$symbol->{atval}); </td> </tr> <tr> <td class="h" > <a name="1167">1167</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 149 </td> <td class="s"> return $node, $result[1]; </td> </tr> <tr> <td class="h" > <a name="1168">1168</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1169">1169</a> </td> <td class="c3" > 20 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 74 </td> <td class="s"> return $self->_createMmlNode($symbol->{tag}, $result[0]), $result[1]; </td> </tr> <tr> <td class="h" > <a name="1170">1170</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1171">1171</a> </td> <td class="c3" > 80 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1171-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 215 </td> <td class="s"> if ($ttype eq 'BINARY') { </td> </tr> <tr> <td class="h" > <a name="1172">1172</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 66 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1173">1173</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 66 </td> <td class="s"> my @result = $self->_parseSexpr($str); </td> </tr> <tr> <td class="h" > <a name="1174">1174</a> </td> <td class="c3" > 24 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1174-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 74 </td> <td class="s"> return ($self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1175">1175</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode($input)), $str) </td> </tr> <tr> <td class="h" > <a name="1176">1176</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if ! defined $result[0]; </td> </tr> <tr> <td class="h" > <a name="1177">1177</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 64 </td> <td class="s"> _removeBrackets($result[0]); </td> </tr> <tr> <td class="h" > <a name="1178">1178</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 91 </td> <td class="s"> my @result2 = $self->_parseSexpr($result[1]); </td> </tr> <tr> <td class="h" > <a name="1179">1179</a> </td> <td class="c3" > 24 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1179-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 79 </td> <td class="s"> return ($self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1180">1180</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode($input)), $str) </td> </tr> <tr> <td class="h" > <a name="1181">1181</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if ! defined $result2[0]; </td> </tr> <tr> <td class="h" > <a name="1182">1182</a> </td> <td class="c3" > 24 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 66 </td> <td class="s"> _removeBrackets($result2[0]); </td> </tr> <tr> <td class="h" > <a name="1183">1183</a> </td> <td class="c3" > 24 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1183-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 112 </td> <td class="s"> if ($input =~ /new(command|symbol)/) { </td> </tr> <tr> <td class="h" > <a name="1184">1184</a> </td> <td class="c3" > 10 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 28 </td> <td class="s"> my $what = $1; </td> </tr> <tr> <td class="h" > <a name="1185">1185</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Look for text in both arguments </td> </tr> <tr> <td class="h" > <a name="1186">1186</a> </td> <td class="c3" > 10 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 18 </td> <td class="s"> my $text1 = $result[0]; </td> </tr> <tr> <td class="h" > <a name="1187">1187</a> </td> <td class="c3" > 10 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 15 </td> <td class="s"> my $haveTextArgs = 0; </td> </tr> <tr> <td class="h" > <a name="1188">1188</a> </td> <td class="c3" > 10 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 26 </td> <td class="s"> $text1 = $text1->firstChild while $text1->nodeName eq 'mrow'; </td> </tr> <tr> <td class="h" > <a name="1189">1189</a> </td> <td class="c3" > 10 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1189-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 26 </td> <td class="s"> if ($text1->nodeName eq 'mtext') { </td> </tr> <tr> <td class="h" > <a name="1190">1190</a> </td> <td class="c3" > 10 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 12 </td> <td class="s"> my $text2 = $result2[0]; </td> </tr> <tr> <td class="h" > <a name="1191">1191</a> </td> <td class="c3" > 10 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 22 </td> <td class="s"> $text2 = $text2->firstChild while $text2->nodeName eq 'mrow'; </td> </tr> <tr> <td class="h" > <a name="1192">1192</a> </td> <td class="c3" > 10 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 24 </td> <td class="s"> my $latex; </td> </tr> <tr> <td class="h" > <a name="1193">1193</a> </td> <td class="c3" > 10 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1193-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1193-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 26 </td> <td class="s"> if ($result2[0]->childNodes > 1 && $input eq 'newsymbol') { </td> </tr> <tr> <td class="h" > <a name="1194">1194</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Process the latex string for a newsymbol </td> </tr> <tr> <td class="h" > <a name="1195">1195</a> </td> <td class="c3" > 4 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14 </td> <td class="s"> my $latexdef = $result2[0]->child(1); </td> </tr> <tr> <td class="h" > <a name="1196">1196</a> </td> <td class="c3" > 4 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 13 </td> <td class="s"> $latexdef = $latexdef->firstChild </td> </tr> <tr> <td class="h" > <a name="1197">1197</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> while $latexdef->nodeName eq 'mrow'; </td> </tr> <tr> <td class="h" > <a name="1198">1198</a> </td> <td class="c3" > 4 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 10 </td> <td class="s"> $latex = $latexdef->firstChild->nodeValue; </td> </tr> <tr> <td class="h" > <a name="1199">1199</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1200">1200</a> </td> <td class="c3" > 10 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1200-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 54 </td> <td class="s"> if ($text2->nodeName eq 'mtext') { </td> </tr> <tr> <td class="h" > <a name="1201">1201</a> </td> <td class="c3" > 8 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1201-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 23 </td> <td class="s"> $self->{Definitions}{$text1->firstChild->nodeValue} = { </td> </tr> <tr> <td class="h" > <a name="1202">1202</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> tag =>'mo', </td> </tr> <tr> <td class="h" > <a name="1203">1203</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> output=>$text2->firstChild->nodeValue, </td> </tr> <tr> <td class="h" > <a name="1204">1204</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ttype =>$what eq 'symbol' ? 'CONST' : 'DEFINITION', </td> </tr> <tr> <td class="h" > <a name="1205">1205</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> }; </td> </tr> <tr> <td class="h" > <a name="1206">1206</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 48 </td> <td class="s"> $self->{Definition_RE} = join '|', </td> </tr> <tr> <td class="h" > <a name="1207">1207</a> </td> <td class="c3" > 8 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 56 </td> <td class="s"> map("\Q$_\E", sort {length($b) - length($a)} </td> </tr> <tr> <td class="h" > <a name="1208">1208</a> </td> <td class="c3" > 8 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 24 </td> <td class="s"> keys %{$self->{Definitions}}); </td> </tr> <tr> <td class="h" > <a name="1209">1209</a> </td> <td class="c3" > 8 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1209-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 36 </td> <td class="s"> $self->{Latex}{$text2->firstChild->nodeValue} = $latex </td> </tr> <tr> <td class="h" > <a name="1210">1210</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if defined $latex; </td> </tr> <tr> <td class="h" > <a name="1211">1211</a> </td> <td class="c3" > 8 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 20 </td> <td class="s"> $haveTextArgs = 1; </td> </tr> <tr> <td class="h" > <a name="1212">1212</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1213">1213</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1214">1214</a> </td> <td class="c3" > 10 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1214-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 27 </td> <td class="s"> if (! $haveTextArgs) { </td> </tr> <tr> <td class="h" > <a name="1215">1215</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 6 </td> <td class="s"> $newFrag->appendChild($self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1216">1216</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode($input)), </td> </tr> <tr> <td class="h" > <a name="1217">1217</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $result[0], $result2[0]); </td> </tr> <tr> <td class="h" > <a name="1218">1218</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 6 </td> <td class="s"> return $self->_createMmlNode('mrow', $newFrag), $result2[1]; </td> </tr> <tr> <td class="h" > <a name="1219">1219</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1220">1220</a> </td> <td class="c3" > 8 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 46 </td> <td class="s"> return undef, $result2[1]; </td> </tr> <tr> <td class="h" > <a name="1221">1221</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1222">1222</a> </td> <td class="c3" > 14 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1222-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 63 </td> <td class="s"> if ($input =~ /root|stackrel/) { </td> </tr> <tr> <td class="h" > <a name="1223">1223</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14 </td> <td class="s"> $newFrag->appendChild($result2[0]); </td> </tr> <tr> <td class="h" > <a name="1224">1224</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1225">1225</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 44 </td> <td class="s"> $newFrag->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1226">1226</a> </td> <td class="c3" > 14 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1226-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 34 </td> <td class="s"> if ($input eq 'frac') { </td> </tr> <tr> <td class="h" > <a name="1227">1227</a> </td> <td class="c3" > 8 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 18 </td> <td class="s"> $newFrag->appendChild($result2[0]); </td> </tr> <tr> <td class="h" > <a name="1228">1228</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1229">1229</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 42 </td> <td class="s"> return $self->_createMmlNode($symbol->{tag}, $newFrag), $result2[1]; </td> </tr> <tr> <td class="h" > <a name="1230">1230</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1231">1231</a> </td> <td class="c3" > 56 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1231-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 138 </td> <td class="s"> if ($ttype eq 'INFIX') { </td> </tr> <tr> <td class="h" > <a name="1232">1232</a> </td> <td class="c3" > 16 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 36 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1233">1233</a> </td> <td class="c3" > 16 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 50 </td> <td class="s"> return $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1234">1234</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo', $self->_createTextNode($symbol->{output})), $str; </td> </tr> <tr> <td class="h" > <a name="1235">1235</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1236">1236</a> </td> <td class="c3" > 40 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1236-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 152 </td> <td class="s"> if ($ttype eq 'SPACE') { </td> </tr> <tr> <td class="h" > <a name="1237">1237</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 54 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1238">1238</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 39 </td> <td class="s"> my $node = $self->_createElementMathML('mspace'); </td> </tr> <tr> <td class="h" > <a name="1239">1239</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 41 </td> <td class="s"> $node->setAttribute('width', '1ex'); </td> </tr> <tr> <td class="h" > <a name="1240">1240</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 36 </td> <td class="s"> $newFrag->appendChild($node); </td> </tr> <tr> <td class="h" > <a name="1241">1241</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 47 </td> <td class="s"> $newFrag->appendChild </td> </tr> <tr> <td class="h" > <a name="1242">1242</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($self->_createMmlNode($symbol->{tag}, </td> </tr> <tr> <td class="h" > <a name="1243">1243</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->_createTextNode($symbol->{output}))); </td> </tr> <tr> <td class="h" > <a name="1244">1244</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 34 </td> <td class="s"> $node = $self->_createElementMathML('mspace'); </td> </tr> <tr> <td class="h" > <a name="1245">1245</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 36 </td> <td class="s"> $node->setAttribute('width', '1ex'); </td> </tr> <tr> <td class="h" > <a name="1246">1246</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 34 </td> <td class="s"> $newFrag->appendChild($node); </td> </tr> <tr> <td class="h" > <a name="1247">1247</a> </td> <td class="c3" > 14 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 35 </td> <td class="s"> return $self->_createMmlNode('mrow', $newFrag), $str; </td> </tr> <tr> <td class="h" > <a name="1248">1248</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1249">1249</a> </td> <td class="c3" > 26 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1249-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 63 </td> <td class="s"> if ($ttype eq 'LEFTRIGHT') { </td> </tr> <tr> <td class="h" > <a name="1250">1250</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 20 </td> <td class="s"> $self->{nestingDepth}++; </td> </tr> <tr> <td class="h" > <a name="1251">1251</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 29 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1252">1252</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 35 </td> <td class="s"> my @result = $self->_parseExpr($str, 0); </td> </tr> <tr> <td class="h" > <a name="1253">1253</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 34 </td> <td class="s"> $self->{nestingDepth}--; </td> </tr> <tr> <td class="h" > <a name="1254">1254</a> </td> <td class="c3" > 12 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1254-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 40 </td> <td class="s"> my $st = $result[0]->lastChild ? </td> </tr> <tr> <td class="h" > <a name="1255">1255</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $result[0]->lastChild->firstChild->nodeValue : ''; </td> </tr> <tr> <td class="h" > <a name="1256">1256</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 41 </td> <td class="s"> my $node = $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1257">1257</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ('mo',$self->_createTextNode($symbol->{output})); </td> </tr> <tr> <td class="h" > <a name="1258">1258</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 39 </td> <td class="s"> $node = $self->_createMmlNode('mrow', $node); </td> </tr> <tr> <td class="h" > <a name="1259">1259</a> </td> <td class="c3" > 12 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1259-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 40 </td> <td class="s"> if ($st eq '|') { # it's an absolute value subterm </td> </tr> <tr> <td class="h" > <a name="1260">1260</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 27 </td> <td class="s"> $node->appendChild($result[0]); </td> </tr> <tr> <td class="h" > <a name="1261">1261</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 74 </td> <td class="s"> return $node, $result[1]; </td> </tr> <tr> <td class="h" > <a name="1262">1262</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1263">1263</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # the "|" is a \mid </td> </tr> <tr> <td class="h" > <a name="1264">1264</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> return $node, $str; </td> </tr> <tr> <td class="h" > <a name="1265">1265</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1266">1266</a> </td> <td class="c3" > 14 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1266-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 29 </td> <td class="s"> if ($ttype eq 'NOP') { </td> </tr> <tr> <td class="h" > <a name="1267">1267</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1268">1268</a> </td> <td class="c3" > 2 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 8 </td> <td class="s"> return $self->_parseSexpr($str); </td> </tr> <tr> <td class="h" > <a name="1269">1269</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1270">1270</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 28 </td> <td class="s"> $str = _removeCharsAndBlanks($str, length $input); </td> </tr> <tr> <td class="h" > <a name="1271">1271</a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 44 </td> <td class="s"> return $self->_createMmlNode </td> </tr> <tr> <td class="h" > <a name="1272">1272</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($symbol->{tag}, # it's a constant </td> </tr> <tr> <td class="h" > <a name="1273">1273</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->_createTextNode($symbol->{output})), $str; </td> </tr> <tr> <td class="h" > <a name="1274">1274</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1275">1275</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1276">1276</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Removes brackets at the beginning or end of an mrow node </td> </tr> <tr> <td class="h" > <a name="1277">1277</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: node object </td> </tr> <tr> <td class="h" > <a name="1278">1278</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: None </td> </tr> <tr> <td class="h" > <a name="1279">1279</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Side-effects: may change children of node object </td> </tr> <tr> <td class="h" > <a name="1280">1280</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _removeBrackets { </td> </tr> <tr> <td class="h" > <a name="1281">1281</a> </td> <td class="c3" > 584 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1281-1"> 584 </a> </td> <td >   </td> <td > 881 </td> <td class="s"> my ($node) = @_; </td> </tr> <tr> <td class="h" > <a name="1282">1282</a> </td> <td class="c3" > 584 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1282-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1497 </td> <td class="s"> if ($node->nodeName eq 'mrow') { </td> </tr> <tr> <td class="h" > <a name="1283">1283</a> </td> <td class="c3" > 242 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 779 </td> <td class="s"> my $st = $node->firstChild->firstChild->nodeValue; </td> </tr> <tr> <td class="h" > <a name="1284">1284</a> </td> <td class="c3" > 242 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1284-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1487 </td> <td class="s"> $node->removeChild($node->firstChild) if $st =~ /^[\(\[\{]$/; </td> </tr> <tr> <td class="h" > <a name="1285">1285</a> </td> <td class="c3" > 242 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 725 </td> <td class="s"> $st = $node->lastChild->firstChild->nodeValue; </td> </tr> <tr> <td class="h" > <a name="1286">1286</a> </td> <td class="c3" > 242 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1286-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1142 </td> <td class="s"> $node->removeChild($node->lastChild) if $st =~ /^[\)\]\}]$/; </td> </tr> <tr> <td class="h" > <a name="1287">1287</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1288">1288</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1289">1289</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1290">1290</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Removes the first n characters and any following blanks </td> </tr> <tr> <td class="h" > <a name="1291">1291</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: string, n </td> </tr> <tr> <td class="h" > <a name="1292">1292</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: resultant string </td> </tr> <tr> <td class="h" > <a name="1293">1293</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _removeCharsAndBlanks { </td> </tr> <tr> <td class="h" > <a name="1294">1294</a> </td> <td class="c3" > 11440 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1294-1"> 11440 </a> </td> <td >   </td> <td > 19864 </td> <td class="s"> my ($str, $n) = @_; </td> </tr> <tr> <td class="h" > <a name="1295">1295</a> </td> <td class="c3" > 11440 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1295-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 36692 </td> <td class="s"> my $st = substr($str, </td> </tr> <tr> <td class="h" > <a name="1296">1296</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> substr($str, $n) =~ /^\\[^\\ ,!]/ ? $n+1 : $n); </td> </tr> <tr> <td class="h" > <a name="1297">1297</a> </td> <td class="c3" > 11440 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 27209 </td> <td class="s"> $st =~ s/^[\x00-\x20]+//; </td> </tr> <tr> <td class="h" > <a name="1298">1298</a> </td> <td class="c3" > 11440 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 27194 </td> <td class="s"> return $st; </td> </tr> <tr> <td class="h" > <a name="1299">1299</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1300">1300</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1301">1301</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Removes outermost parenthesis </td> </tr> <tr> <td class="h" > <a name="1302">1302</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: string </td> </tr> <tr> <td class="h" > <a name="1303">1303</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: string with parentheses removed </td> </tr> <tr> <td class="h" > <a name="1304">1304</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _unparen { </td> </tr> <tr> <td class="h" > <a name="1305">1305</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1305-1"> 0 </a> </td> <td >   </td> <td > 0 </td> <td class="s"> my ($s) = @_; </td> </tr> <tr> <td class="h" > <a name="1306">1306</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> $s =~ s!^(<mrow>)<mo>[\(\[\{]</mo>!$1!; </td> </tr> <tr> <td class="h" > <a name="1307">1307</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> $s =~ s!<mo>[\)\]\}]</mo>(</mrow>)$!$1!; </td> </tr> <tr> <td class="h" > <a name="1308">1308</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> $s; </td> </tr> <tr> <td class="h" > <a name="1309">1309</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1310">1310</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1311">1311</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> BEGIN { </td> </tr> <tr> <td class="h" > <a name="1312">1312</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1312-1"> 1 </a> </td> <td >   </td> <td > 233 </td> <td class="s"> my %Conversion = ('<'=>'lt', '>'=>'gt', '"'=>'quot', '&'=>'amp'); </td> </tr> <tr> <td class="h" > <a name="1313">1313</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1314">1314</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Encodes special xml characters </td> </tr> <tr> <td class="h" > <a name="1315">1315</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: string </td> </tr> <tr> <td class="h" > <a name="1316">1316</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: encoded string </td> </tr> <tr> <td class="h" > <a name="1317">1317</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub _xml_encode { </td> </tr> <tr> <td class="h" > <a name="1318">1318</a> </td> <td class="c3" > 1131 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1318-1"> 1131 </a> </td> <td >   </td> <td > 1512 </td> <td class="s"> my ($s) = @_; </td> </tr> <tr> <td class="h" > <a name="1319">1319</a> </td> <td class="c3" > 1131 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3238 </td> <td class="s"> $s =~ s/([<>\"&])/&$Conversion{$1};/g; </td> </tr> <tr> <td class="h" > <a name="1320">1320</a> </td> <td class="c3" > 1131 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5950 </td> <td class="s"> $s; </td> </tr> <tr> <td class="h" > <a name="1321">1321</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1322">1322</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1323">1323</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1324">1324</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> package Text::ASCIIMathML::Node; </td> </tr> <tr> <td class="h" > <a name="1325">1325</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1326">1326</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> { </td> </tr> <tr> <td class="h" > <a name="1327">1327</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Create a closure for the following attributes </td> </tr> <tr> <td class="h" > <a name="1328">1328</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> my %parser_of; </td> </tr> <tr> <td class="h" > <a name="1329">1329</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1330">1330</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Creates a new Text::ASCIIMathML::Node object </td> </tr> <tr> <td class="h" > <a name="1331">1331</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: Text::ASCIIMathML object, optional tag </td> </tr> <tr> <td class="h" > <a name="1332">1332</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: new object </td> </tr> <tr> <td class="h" > <a name="1333">1333</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub new { </td> </tr> <tr> <td class="h" > <a name="1334">1334</a> </td> <td class="c3" > 9536 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1334-1"> 9536 </a> </td> <td >   </td> <td > 22965 </td> <td class="s"> my ($class, $parser, $tag) = @_; </td> </tr> <tr> <td class="h" > <a name="1335">1335</a> </td> <td class="c3" > 9536 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 42409 </td> <td class="s"> my $obj = bless { children=>[] }, $class; </td> </tr> <tr> <td class="h" > <a name="1336">1336</a> </td> <td class="c3" > 9536 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1336-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 29418 </td> <td class="s"> if (defined $tag) { $obj->{tag} = $tag } </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 5466 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 18195 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1337">1337</a> </td> <td class="c3" > 4070 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 10920 </td> <td class="s"> else { $obj->{frag} = 1 } </td> </tr> <tr> <td class="h" > <a name="1338">1338</a> </td> <td class="c3" > 9536 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 39639 </td> <td class="s"> $parser_of{$obj} = $parser; </td> </tr> <tr> <td class="h" > <a name="1339">1339</a> </td> <td class="c3" > 9536 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 31164 </td> <td class="s"> return $obj; </td> </tr> <tr> <td class="h" > <a name="1340">1340</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1341">1341</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1342">1342</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Creates a new Text::ASCIIMathML::Node text object </td> </tr> <tr> <td class="h" > <a name="1343">1343</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: Text::ASCIIMathML object, text </td> </tr> <tr> <td class="h" > <a name="1344">1344</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: new object </td> </tr> <tr> <td class="h" > <a name="1345">1345</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub newText { </td> </tr> <tr> <td class="h" > <a name="1346">1346</a> </td> <td class="c3" > 3193 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1346-1"> 3193 </a> </td> <td >   </td> <td > 5115 </td> <td class="s"> my ($class, $parser, $text) = @_; </td> </tr> <tr> <td class="h" > <a name="1347">1347</a> </td> <td class="c3" > 3193 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 20999 </td> <td class="s"> $text =~ s/^\s*(.*?)\s*$/$1/; # Delete leading/trailing spaces </td> </tr> <tr> <td class="h" > <a name="1348">1348</a> </td> <td class="c3" > 3193 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14451 </td> <td class="s"> my $obj = bless { text=>$text }, $class; </td> </tr> <tr> <td class="h" > <a name="1349">1349</a> </td> <td class="c3" > 3193 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14132 </td> <td class="s"> $parser_of{$obj} = $parser; </td> </tr> <tr> <td class="h" > <a name="1350">1350</a> </td> <td class="c3" > 3193 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 10816 </td> <td class="s"> return $obj; </td> </tr> <tr> <td class="h" > <a name="1351">1351</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1352">1352</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1353">1353</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> my %Parent; </td> </tr> <tr> <td class="h" > <a name="1354">1354</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> my $Null; </td> </tr> <tr> <td class="h" > <a name="1355">1355</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> BEGIN { </td> </tr> <tr> <td class="h" > <a name="1356">1356</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1356-1"> 1 </a> </td> <td >   </td> <td > 8 </td> <td class="s"> $Null = new Text::ASCIIMathML::Node; </td> </tr> <tr> <td class="h" > <a name="1357">1357</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1358">1358</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1359">1359</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Appends one or more node objects to the children of an object </td> </tr> <tr> <td class="h" > <a name="1360">1360</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: list of objects to append </td> </tr> <tr> <td class="h" > <a name="1361">1361</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: self </td> </tr> <tr> <td class="h" > <a name="1362">1362</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub appendChild : method { </td> </tr> <tr> <td class="h" > <a name="1363">1363</a> </td> <td class="c3" > 9329 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1363-1"> 9329 </a> </td> <td >   </td> <td > 24289 </td> <td class="s"> my $self = shift; </td> </tr> <tr> <td class="h" > <a name="1364">1364</a> </td> <td class="c3" > 9329 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1364-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 45126 </td> <td class="s"> my @new = map $_->{frag} ? @{$_->{children}} : $_, @_; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 1194 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3888 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1365">1365</a> </td> <td class="c3" > 9329 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 11451 </td> <td class="s"> push @{$self->{children}}, @new; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 9329 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 21513 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1366">1366</a> </td> <td class="c3" > 9329 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14245 </td> <td class="s"> map do {$Parent{$_} = $self}, @new; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 11134 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 62885 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1367">1367</a> </td> <td class="c3" > 9329 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 33888 </td> <td class="s"> return $self; </td> </tr> <tr> <td class="h" > <a name="1368">1368</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1369">1369</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1370">1370</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns a the value for an attribute of a node object </td> </tr> <tr> <td class="h" > <a name="1371">1371</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: Attribute name </td> </tr> <tr> <td class="h" > <a name="1372">1372</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Value for the attribute </td> </tr> <tr> <td class="h" > <a name="1373">1373</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub attribute { </td> </tr> <tr> <td class="h" > <a name="1374">1374</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1374-1"> 0 </a> </td> <td >   </td> <td > 0 </td> <td class="s"> my ($self, $attr) = @_; </td> </tr> <tr> <td class="h" > <a name="1375">1375</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> return $self->{attr}{$attr}; </td> </tr> <tr> <td class="h" > <a name="1376">1376</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1377">1377</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1378">1378</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns a list of the attributes of a node object </td> </tr> <tr> <td class="h" > <a name="1379">1379</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1380">1380</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Array of attribute names </td> </tr> <tr> <td class="h" > <a name="1381">1381</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub attributeList { </td> </tr> <tr> <td class="h" > <a name="1382">1382</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1382-1"> 0 </a> </td> <td >   </td> <td > 0 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="1383">1383</a> </td> <td class="c0" > 0 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1383-1"> 0 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> return $self->{attrlist} ? @{$self->{attrlist}} : (); </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1384">1384</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1385">1385</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1386">1386</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns a child with a given index in the array of children of a node </td> </tr> <tr> <td class="h" > <a name="1387">1387</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: index </td> </tr> <tr> <td class="h" > <a name="1388">1388</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Array of node objects </td> </tr> <tr> <td class="h" > <a name="1389">1389</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub child { </td> </tr> <tr> <td class="h" > <a name="1390">1390</a> </td> <td class="c3" > 7 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1390-1"> 7 </a> </td> <td >   </td> <td > 18 </td> <td class="s"> my ($self, $index) = @_; </td> </tr> <tr> <td class="h" > <a name="1391">1391</a> </td> <td class="c3" > 7 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1391-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1391-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 28 </td> <td class="s"> return $self->{children} && @{$self->{children}} > $index ? </td> </tr> <tr> <td class="h" > <a name="1392">1392</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->{children}[$index] : $Null; </td> </tr> <tr> <td class="h" > <a name="1393">1393</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1394">1394</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1395">1395</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns an array of children of a node </td> </tr> <tr> <td class="h" > <a name="1396">1396</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1397">1397</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Array of node objects </td> </tr> <tr> <td class="h" > <a name="1398">1398</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub childNodes { </td> </tr> <tr> <td class="h" > <a name="1399">1399</a> </td> <td class="c3" > 1538 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1399-1"> 1538 </a> </td> <td >   </td> <td > 6297 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="1400">1400</a> </td> <td class="c3" > 1538 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1400-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 3495 </td> <td class="s"> return $self->{children} ? @{$self->{children}} : (); </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 1538 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5238 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1401">1401</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1402">1402</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1403">1403</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns the first child of a node; ignores any fragments </td> </tr> <tr> <td class="h" > <a name="1404">1404</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1405">1405</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: node object or self </td> </tr> <tr> <td class="h" > <a name="1406">1406</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub firstChild { </td> </tr> <tr> <td class="h" > <a name="1407">1407</a> </td> <td class="c3" > 1812 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1407-1"> 1812 </a> </td> <td >   </td> <td > 2392 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="1408">1408</a> </td> <td class="c3" > 1812 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1408-1"> 50 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1408-1"> 33 </a> </td> <td >   </td> <td >   </td> <td > 12316 </td> <td class="s"> return $self->{children} && @{$self->{children}} ? </td> </tr> <tr> <td class="h" > <a name="1409">1409</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->{children}[0] : $Null; </td> </tr> <tr> <td class="h" > <a name="1410">1410</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1411">1411</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1412">1412</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns true if the object is a fragment </td> </tr> <tr> <td class="h" > <a name="1413">1413</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1414">1414</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Boolean </td> </tr> <tr> <td class="h" > <a name="1415">1415</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub isFragment { </td> </tr> <tr> <td class="h" > <a name="1416">1416</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1416-1"> 0 </a> </td> <td >   </td> <td > 0 </td> <td class="s"> return $_[0]->{frag}; </td> </tr> <tr> <td class="h" > <a name="1417">1417</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1418">1418</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1419">1419</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns true if the object is a named node </td> </tr> <tr> <td class="h" > <a name="1420">1420</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1421">1421</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Boolean </td> </tr> <tr> <td class="h" > <a name="1422">1422</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub isNamed { </td> </tr> <tr> <td class="h" > <a name="1423">1423</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1423-1"> 0 </a> </td> <td >   </td> <td > 0 </td> <td class="s"> return $_[0]->{tag}; </td> </tr> <tr> <td class="h" > <a name="1424">1424</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1425">1425</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1426">1426</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns true if the object is a text node </td> </tr> <tr> <td class="h" > <a name="1427">1427</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1428">1428</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Boolean </td> </tr> <tr> <td class="h" > <a name="1429">1429</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub isText { </td> </tr> <tr> <td class="h" > <a name="1430">1430</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1430-1"> 0 </a> </td> <td >   </td> <td > 0 </td> <td class="s"> return defined $_[0]->{text}; </td> </tr> <tr> <td class="h" > <a name="1431">1431</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1432">1432</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1433">1433</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns the last child of a node </td> </tr> <tr> <td class="h" > <a name="1434">1434</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1435">1435</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: node object or self </td> </tr> <tr> <td class="h" > <a name="1436">1436</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub lastChild { </td> </tr> <tr> <td class="h" > <a name="1437">1437</a> </td> <td class="c3" > 528 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1437-1"> 528 </a> </td> <td >   </td> <td > 824 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="1438">1438</a> </td> <td class="c3" > 528 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1438-1"> 50 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1438-1"> 33 </a> </td> <td >   </td> <td >   </td> <td > 1373 </td> <td class="s"> return $self->{children} && @{$self->{children}} ? </td> </tr> <tr> <td class="h" > <a name="1439">1439</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->{children}[-1] : $Null; </td> </tr> <tr> <td class="h" > <a name="1440">1440</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1441">1441</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1442">1442</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> BEGIN { </td> </tr> <tr> <td class="h" > <a name="1443">1443</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Creates closure for following "static" variables </td> </tr> <tr> <td class="h" > <a name="1444">1444</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1444-1"> 1 </a> </td> <td >   </td> <td > 966 </td> <td class="s"> my (%LatexSym, %LatexMover, %LatexFont, %LatexOp); </td> </tr> <tr> <td class="h" > <a name="1445">1445</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1446">1446</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns a latex representation of a node object </td> </tr> <tr> <td class="h" > <a name="1447">1447</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1448">1448</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Text string </td> </tr> <tr> <td class="h" > <a name="1449">1449</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub latex : method { </td> </tr> <tr> <td class="h" > <a name="1450">1450</a> </td> <td class="c3" > 3689 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1450-1"> 3689 </a> </td> <td >   </td> <td > 6898 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="1451">1451</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1452">1452</a> </td> <td class="c3" > 3689 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 11881 </td> <td class="s"> my $parser = $parser_of{$self}; </td> </tr> <tr> <td class="h" > <a name="1453">1453</a> </td> <td class="c3" > 3689 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1453-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 14189 </td> <td class="s"> if (! %LatexSym) { </td> </tr> <tr> <td class="h" > <a name="1454">1454</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Build the entity to latex symbol translator </td> </tr> <tr> <td class="h" > <a name="1455">1455</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4 </td> <td class="s"> my $amsymbol = Text::ASCIIMathML::_get_amsymbol_(); </td> </tr> <tr> <td class="h" > <a name="1456">1456</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 58 </td> <td class="s"> foreach my $sym (keys %$amsymbol) { </td> </tr> <tr> <td class="h" > <a name="1457">1457</a> </td> <td class="c3" > 203 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1457-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1457-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 1200 </td> <td class="s"> next unless (defined $amsymbol->{$sym}{output} && </td> </tr> <tr> <td class="h" > <a name="1458">1458</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $amsymbol->{$sym}{output} =~ /&\#x.*;/); </td> </tr> <tr> <td class="h" > <a name="1459">1459</a> </td> <td class="c3" > 125 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 424 </td> <td class="s"> my ($output, $tex) = map $amsymbol->{$sym}{$_}, qw(output tex); </td> </tr> <tr> <td class="h" > <a name="1460">1460</a> </td> <td class="c3" > 125 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1460-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1460-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 342 </td> <td class="s"> next if defined $LatexSym{$output} && ! $amsymbol->{$sym}{latex}; </td> </tr> <tr> <td class="h" > <a name="1461">1461</a> </td> <td class="c3" > 118 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1461-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 217 </td> <td class="s"> $tex = $sym if $tex eq ''; </td> </tr> <tr> <td class="h" > <a name="1462">1462</a> </td> <td class="c3" > 118 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 359 </td> <td class="s"> $LatexSym{$output} = "\\$tex"; </td> </tr> <tr> <td class="h" > <a name="1463">1463</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1464">1464</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 22 </td> <td class="s"> my %math_font = (bbb => 'mathds', </td> </tr> <tr> <td class="h" > <a name="1465">1465</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> mathbb => 'mathds', </td> </tr> <tr> <td class="h" > <a name="1466">1466</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> cc => 'cal', </td> </tr> <tr> <td class="h" > <a name="1467">1467</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> mathcal => 'cal', </td> </tr> <tr> <td class="h" > <a name="1468">1468</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> fr => 'mathfrak', </td> </tr> <tr> <td class="h" > <a name="1469">1469</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> mathfrak => 'mathfrak', </td> </tr> <tr> <td class="h" > <a name="1470">1470</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ); </td> </tr> <tr> <td class="h" > <a name="1471">1471</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Add character codes </td> </tr> <tr> <td class="h" > <a name="1472">1472</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 89 </td> <td class="s"> foreach my $coded (grep $amsymbol->{$_}{codes}, keys %$amsymbol) { </td> </tr> <tr> <td class="h" > <a name="1473">1473</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 294 </td> <td class="s"> @LatexSym{map(sprintf("&#x%X;", $_), </td> </tr> <tr> <td class="h" > <a name="1474">1474</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 204 </td> <td class="s"> @{$amsymbol->{$coded}{codes}})} = </td> </tr> <tr> <td class="h" > <a name="1475">1475</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> map("\\$math_font{$coded}\{$_}", ('A' .. 'Z')); </td> </tr> <tr> <td class="h" > <a name="1476">1476</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1477">1477</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Post-process protected symbols </td> </tr> <tr> <td class="h" > <a name="1478">1478</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 116 </td> <td class="s"> $LatexSym{$_} =~ s/^\\\\/\\/ foreach keys %LatexSym; </td> </tr> <tr> <td class="h" > <a name="1479">1479</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 20 </td> <td class="s"> %LatexMover = ('^' => '\hat', </td> </tr> <tr> <td class="h" > <a name="1480">1480</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '\overline' => '\overline', </td> </tr> <tr> <td class="h" > <a name="1481">1481</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '\to' => '\vec', </td> </tr> <tr> <td class="h" > <a name="1482">1482</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '\vec' => '\vec', </td> </tr> <tr> <td class="h" > <a name="1483">1483</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '\rightarrow' => '\vec', </td> </tr> <tr> <td class="h" > <a name="1484">1484</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '.' => '\dot', </td> </tr> <tr> <td class="h" > <a name="1485">1485</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '..' => '\ddot', </td> </tr> <tr> <td class="h" > <a name="1486">1486</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ); </td> </tr> <tr> <td class="h" > <a name="1487">1487</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 8 </td> <td class="s"> %LatexFont = (bold => '\bf', </td> </tr> <tr> <td class="h" > <a name="1488">1488</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> 'double-struck' => '\mathds', </td> </tr> <tr> <td class="h" > <a name="1489">1489</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> fraktur => '\mathfrak', </td> </tr> <tr> <td class="h" > <a name="1490">1490</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> monospace => '\tt', </td> </tr> <tr> <td class="h" > <a name="1491">1491</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> 'sans-serif' => '\sf', </td> </tr> <tr> <td class="h" > <a name="1492">1492</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> script => '\cal', </td> </tr> <tr> <td class="h" > <a name="1493">1493</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ); </td> </tr> <tr> <td class="h" > <a name="1494">1494</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 12 </td> <td class="s"> %LatexOp = (if => '\mbox{if }', </td> </tr> <tr> <td class="h" > <a name="1495">1495</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> lcm => '\mbox{lcm}', </td> </tr> <tr> <td class="h" > <a name="1496">1496</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> newcommand => '\mbox{newcommand}', </td> </tr> <tr> <td class="h" > <a name="1497">1497</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\\" => '\backslash', </td> </tr> <tr> <td class="h" > <a name="1498">1498</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '<' => '<', </td> </tr> <tr> <td class="h" > <a name="1499">1499</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '>' => '>', </td> </tr> <tr> <td class="h" > <a name="1500">1500</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '&' => '\&', </td> </tr> <tr> <td class="h" > <a name="1501">1501</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> '...' => '\ldots', </td> </tr> <tr> <td class="h" > <a name="1502">1502</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ); </td> </tr> <tr> <td class="h" > <a name="1503">1503</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1504">1504</a> </td> <td class="c3" > 3689 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1504-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 22347 </td> <td class="s"> if (defined $self->{text}) { </td> </tr> <tr> <td class="h" > <a name="1505">1505</a> </td> <td class="c3" > 1294 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2719 </td> <td class="s"> my $text = $self->{text}; </td> </tr> <tr> <td class="h" > <a name="1506">1506</a> </td> <td class="c3" > 1294 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2990 </td> <td class="s"> $text =~ s/([{}])/\\$1/; </td> </tr> <tr> <td class="h" > <a name="1507">1507</a> </td> <td class="c3" > 1294 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5353 </td> <td class="s"> $text =~ s/(&\#x.*?;)/ </td> </tr> <tr> <td class="h" > <a name="1508">1508</a> </td> <td class="c3" > 260 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1508-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 2934 </td> <td class="s"> defined $parser->{Latex}{$1} ? $parser->{Latex}{$1} : </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1509">1509</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> defined $LatexSym{$1} ? $LatexSym{$1} : $1/eg; </td> </tr> <tr> <td class="h" > <a name="1510">1510</a> </td> <td class="c3" > 1294 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1804 </td> <td class="s"> $text =~ s/([\#])/\\$1/; </td> </tr> <tr> <td class="h" > <a name="1511">1511</a> </td> <td class="c3" > 1294 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5252 </td> <td class="s"> return $text; </td> </tr> <tr> <td class="h" > <a name="1512">1512</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1513">1513</a> </td> <td class="c3" > 2395 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4571 </td> <td class="s"> my $tag = $self->{tag}; </td> </tr> <tr> <td class="h" > <a name="1514">1514</a> </td> <td class="c3" > 2395 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2924 </td> <td class="s"> my @child_str; </td> </tr> <tr> <td class="h" > <a name="1515">1515</a> </td> <td class="c3" > 2395 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3084 </td> <td class="s"> my $child_str = ''; </td> </tr> <tr> <td class="h" > <a name="1516">1516</a> </td> <td class="c3" > 2395 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1516-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 2787 </td> <td class="s"> if (@{$self->{children}}) { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 2395 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7672 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1517">1517</a> </td> <td class="c3" > 2373 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3314 </td> <td class="s"> foreach (@{$self->{children}}) { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 2373 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5222 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1518">1518</a> </td> <td class="c3" > 3416 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14150 </td> <td class="s"> push @child_str, $_->latex($parser); </td> </tr> <tr> <td class="h" > <a name="1519">1519</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1520">1520</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1521">1521</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1522">1522</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mo </td> </tr> <tr> <td class="h" > <a name="1523">1523</a> </td> <td class="c3" > 2395 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1523-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 12155 </td> <td class="s"> if ($tag eq 'mo') { </td> </tr> <tr> <td class="h" > <a name="1524">1524</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Need to distinguish bmod from pmod </td> </tr> <tr> <td class="h" > <a name="1525">1525</a> </td> <td class="c3" > 623 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2028 </td> <td class="s"> my $parent = $self->parent; </td> </tr> <tr> <td class="h" > <a name="1526">1526</a> </td> <td class="c3" > 623 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1526-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1526-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 2453 </td> <td class="s"> return $self eq $parent->child(1) && </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1527">1527</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $parent->firstChild->firstChild->{text} eq '(' </td> </tr> <tr> <td class="h" > <a name="1528">1528</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ? '\pmod' : '\bmod' </td> </tr> <tr> <td class="h" > <a name="1529">1529</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $child_str[0] eq 'mod'; </td> </tr> <tr> <td class="h" > <a name="1530">1530</a> </td> <td class="c3" > 620 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1530-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1532 </td> <td class="s"> return $LatexOp{$child_str[0]} if $LatexOp{$child_str[0]}; </td> </tr> <tr> <td class="h" > <a name="1531">1531</a> </td> <td class="c3" > 597 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1531-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 6017 </td> <td class="s"> return $child_str[0] =~ /^\w+$/ ? "\\$child_str[0]" : $child_str[0]; </td> </tr> <tr> <td class="h" > <a name="1532">1532</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1533">1533</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1534">1534</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mrow </td> </tr> <tr> <td class="h" > <a name="1535">1535</a> </td> <td class="c3" > 1772 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1535-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 3557 </td> <td class="s"> if ($tag eq 'mrow') { </td> </tr> <tr> <td class="h" > <a name="1536">1536</a> </td> <td class="c3" > 279 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1265 </td> <td class="s"> @child_str = grep $_ ne '', @child_str; </td> </tr> <tr> <td class="h" > <a name="1537">1537</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Check for pmod function </td> </tr> <tr> <td class="h" > <a name="1538">1538</a> </td> <td class="c3" > 279 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1538-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1538-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 1322 </td> <td class="s"> if (@child_str > 1 && $child_str[1] eq '\pmod') { </td> </tr> <tr> <td class="h" > <a name="1539">1539</a> </td> <td class="c3" > 1 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1539-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 6 </td> <td class="s"> pop @child_str if $child_str[-1] eq ')'; </td> </tr> <tr> <td class="h" > <a name="1540">1540</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4 </td> <td class="s"> splice @child_str, 0, 2; </td> </tr> <tr> <td class="h" > <a name="1541">1541</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 111 </td> <td class="s"> return "\\pmod{@child_str}"; </td> </tr> <tr> <td class="h" > <a name="1542">1542</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1543">1543</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Check if we need \left ... \right </td> </tr> <tr> <td class="h" > <a name="1544">1544</a> </td> <td class="c3" > 278 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1988 </td> <td class="s"> my $is_tall = grep(/[_^]|\\(begin\{array\}|frac|sqrt|stackrel)/, </td> </tr> <tr> <td class="h" > <a name="1545">1545</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> @child_str); </td> </tr> <tr> <td class="h" > <a name="1546">1546</a> </td> <td class="c3" > 278 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1546-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1546-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 1243 </td> <td class="s"> if ($is_tall && @child_str > 1 && </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-2"> 66 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#-3"> 66 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1547">1547</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($child_str[0] =~ /^([\(\[|]|\\\{)$/ || </td> </tr> <tr> <td class="h" > <a name="1548">1548</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $child_str[-1] =~ /^([\)\]|]|\\\})$/)) { </td> </tr> <tr> <td class="h" > <a name="1549">1549</a> </td> <td class="c3" > 27 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1549-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 134 </td> <td class="s"> if ($child_str[0] =~ /^([\(\[|]|\\\{)$/) { </td> </tr> <tr> <td class="h" > <a name="1550">1550</a> </td> <td class="c3" > 27 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 69 </td> <td class="s"> $child_str[0] = "\\left$child_str[0]"; </td> </tr> <tr> <td class="h" > <a name="1551">1551</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1552">1552</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="1553">1553</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> unshift @child_str, "\\left."; </td> </tr> <tr> <td class="h" > <a name="1554">1554</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1555">1555</a> </td> <td class="c3" > 27 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1555-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 206 </td> <td class="s"> if ($child_str[-1] =~ /^([\)\]|]|\\\})$/) { </td> </tr> <tr> <td class="h" > <a name="1556">1556</a> </td> <td class="c3" > 26 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 67 </td> <td class="s"> $child_str[-1] = "\\right$child_str[-1]"; </td> </tr> <tr> <td class="h" > <a name="1557">1557</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1558">1558</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="1559">1559</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4 </td> <td class="s"> push @child_str, "\\right."; </td> </tr> <tr> <td class="h" > <a name="1560">1560</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1561">1561</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1562">1562</a> </td> <td class="c3" > 278 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1759 </td> <td class="s"> return "@child_str"; </td> </tr> <tr> <td class="h" > <a name="1563">1563</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1564">1564</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1565">1565</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1566">1566</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mi </td> </tr> <tr> <td class="h" > <a name="1567">1567</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mn </td> </tr> <tr> <td class="h" > <a name="1568">1568</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # math </td> </tr> <tr> <td class="h" > <a name="1569">1569</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mtd </td> </tr> <tr> <td class="h" > <a name="1570">1570</a> </td> <td class="c3" > 1493 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1570-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 10634 </td> <td class="s"> if ($tag =~ /^m([in]|ath|row|td)$/) { </td> </tr> <tr> <td class="h" > <a name="1571">1571</a> </td> <td class="c3" > 963 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3610 </td> <td class="s"> @child_str = grep $_ ne '', @child_str; </td> </tr> <tr> <td class="h" > <a name="1572">1572</a> </td> <td class="c3" > 963 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5220 </td> <td class="s"> return "@child_str"; </td> </tr> <tr> <td class="h" > <a name="1573">1573</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1574">1574</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1575">1575</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # msub </td> </tr> <tr> <td class="h" > <a name="1576">1576</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # msup </td> </tr> <tr> <td class="h" > <a name="1577">1577</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # msubsup </td> </tr> <tr> <td class="h" > <a name="1578">1578</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # munderover </td> </tr> <tr> <td class="h" > <a name="1579">1579</a> </td> <td class="c3" > 530 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1579-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1976 </td> <td class="s"> if ($tag =~ /^(msu[bp](sup)?|munderover)$/) { </td> </tr> <tr> <td class="h" > <a name="1580">1580</a> </td> <td class="c3" > 108 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 235 </td> <td class="s"> my $base = shift @child_str; </td> </tr> <tr> <td class="h" > <a name="1581">1581</a> </td> <td class="c3" > 108 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1581-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 248 </td> <td class="s"> $base = '\mbox{}' if $base eq ''; </td> </tr> <tr> <td class="h" > <a name="1582">1582</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Put {} around arguments with more than one character </td> </tr> <tr> <td class="h" > <a name="1583">1583</a> </td> <td class="c3" > 108 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1583-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 882 </td> <td class="s"> @child_str = map length($_) > 1 ? "{$_}" : $_, @child_str; </td> </tr> <tr> <td class="h" > <a name="1584">1584</a> </td> <td class="c3" > 108 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1584-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 880 </td> <td class="s"> return ($tag eq 'msub' ? "${base}_$child_str[0]" : </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1585">1585</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $tag eq 'msup' ? "${base}^$child_str[0]" : </td> </tr> <tr> <td class="h" > <a name="1586">1586</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "${base}_$child_str[0]^$child_str[1]"); </td> </tr> <tr> <td class="h" > <a name="1587">1587</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1588">1588</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1589">1589</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mover </td> </tr> <tr> <td class="h" > <a name="1590">1590</a> </td> <td class="c3" > 422 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1590-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 906 </td> <td class="s"> if ($tag eq 'mover') { </td> </tr> <tr> <td class="h" > <a name="1591">1591</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Need to special-case math mode accents </td> </tr> <tr> <td class="h" > <a name="1592">1592</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> return </td> </tr> <tr> <td class="h" > <a name="1593">1593</a> </td> <td class="c3" > 11 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1593-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1593-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 100 </td> <td class="s"> ($child_str[1] eq '\overline' && length($child_str[0]) == 1 ? </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1594">1594</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\\bar{$child_str[0]}" : </td> </tr> <tr> <td class="h" > <a name="1595">1595</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $LatexMover{$child_str[1]} ? </td> </tr> <tr> <td class="h" > <a name="1596">1596</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "$LatexMover{$child_str[1]}\{$child_str[0]\}" : </td> </tr> <tr> <td class="h" > <a name="1597">1597</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\\stackrel{$child_str[1]}{$child_str[0]}"); </td> </tr> <tr> <td class="h" > <a name="1598">1598</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1599">1599</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1600">1600</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # munder </td> </tr> <tr> <td class="h" > <a name="1601">1601</a> </td> <td class="c3" > 411 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1601-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1359 </td> <td class="s"> if ($tag eq 'munder') { </td> </tr> <tr> <td class="h" > <a name="1602">1602</a> </td> <td class="c3" > 5 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1602-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 36 </td> <td class="s"> return $child_str[1] eq '\underline' ? "$child_str[1]\{$child_str[0]}" </td> </tr> <tr> <td class="h" > <a name="1603">1603</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> : "$child_str[0]_\{$child_str[1]\}"; </td> </tr> <tr> <td class="h" > <a name="1604">1604</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1605">1605</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1606">1606</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mfrac </td> </tr> <tr> <td class="h" > <a name="1607">1607</a> </td> <td class="c3" > 406 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1607-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 992 </td> <td class="s"> if ($tag eq 'mfrac') { </td> </tr> <tr> <td class="h" > <a name="1608">1608</a> </td> <td class="c3" > 52 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 285 </td> <td class="s"> return "\\frac{$child_str[0]}{$child_str[1]}"; </td> </tr> <tr> <td class="h" > <a name="1609">1609</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1610">1610</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1611">1611</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # msqrt </td> </tr> <tr> <td class="h" > <a name="1612">1612</a> </td> <td class="c3" > 354 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1612-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 863 </td> <td class="s"> if ($tag eq 'msqrt') { </td> </tr> <tr> <td class="h" > <a name="1613">1613</a> </td> <td class="c3" > 10 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 76 </td> <td class="s"> return "\\sqrt{$child_str[0]}"; </td> </tr> <tr> <td class="h" > <a name="1614">1614</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1615">1615</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1616">1616</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mroot </td> </tr> <tr> <td class="h" > <a name="1617">1617</a> </td> <td class="c3" > 344 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1617-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 719 </td> <td class="s"> if ($tag eq 'mroot') { </td> </tr> <tr> <td class="h" > <a name="1618">1618</a> </td> <td class="c3" > 1 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7 </td> <td class="s"> return "\\sqrt[$child_str[1]]{$child_str[0]}"; </td> </tr> <tr> <td class="h" > <a name="1619">1619</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1620">1620</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1621">1621</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mtext </td> </tr> <tr> <td class="h" > <a name="1622">1622</a> </td> <td class="c3" > 343 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1622-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1047 </td> <td class="s"> if ($tag eq 'mtext') { </td> </tr> <tr> <td class="h" > <a name="1623">1623</a> </td> <td class="c3" > 11 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 24 </td> <td class="s"> my $text = $child_str[0]; </td> </tr> <tr> <td class="h" > <a name="1624">1624</a> </td> <td class="c3" > 11 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 33 </td> <td class="s"> my $next = $self->nextSibling; </td> </tr> <tr> <td class="h" > <a name="1625">1625</a> </td> <td class="c3" > 11 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 40 </td> <td class="s"> my $prev = $self->previousSibling; </td> </tr> <tr> <td class="h" > <a name="1626">1626</a> </td> <td class="c3" > 11 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1626-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1626-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 56 </td> <td class="s"> if (defined $next->{tag} && $next->{tag} eq 'mspace') { </td> </tr> <tr> <td class="h" > <a name="1627">1627</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 20 </td> <td class="s"> $text = "$text "; </td> </tr> <tr> <td class="h" > <a name="1628">1628</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1629">1629</a> </td> <td class="c3" > 11 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1629-1"> 100 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1629-1"> 66 </a> </td> <td >   </td> <td >   </td> <td > 48 </td> <td class="s"> if (defined $prev->{tag} && $prev->{tag} eq 'mspace') { </td> </tr> <tr> <td class="h" > <a name="1630">1630</a> </td> <td class="c3" > 5 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 11 </td> <td class="s"> $text = " $text"; </td> </tr> <tr> <td class="h" > <a name="1631">1631</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1632">1632</a> </td> <td class="c3" > 11 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1632-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 330 </td> <td class="s"> $text = ' ' if $text eq ' '; </td> </tr> <tr> <td class="h" > <a name="1633">1633</a> </td> <td class="c3" > 11 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 56 </td> <td class="s"> return "\\mbox{$text}"; </td> </tr> <tr> <td class="h" > <a name="1634">1634</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1635">1635</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1636">1636</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1637">1637</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mspace </td> </tr> <tr> <td class="h" > <a name="1638">1638</a> </td> <td class="c3" > 332 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1638-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 657 </td> <td class="s"> if ($tag eq 'mspace') { </td> </tr> <tr> <td class="h" > <a name="1639">1639</a> </td> <td class="c3" > 19 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 77 </td> <td class="s"> return ''; </td> </tr> <tr> <td class="h" > <a name="1640">1640</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1641">1641</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1642">1642</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mtable </td> </tr> <tr> <td class="h" > <a name="1643">1643</a> </td> <td class="c3" > 313 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1643-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 652 </td> <td class="s"> if ($tag eq 'mtable') { </td> </tr> <tr> <td class="h" > <a name="1644">1644</a> </td> <td class="c3" > 9 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 31 </td> <td class="s"> my $cols = ($child_str[0] =~ tr/&//) + 1; </td> </tr> <tr> <td class="h" > <a name="1645">1645</a> </td> <td class="c3" > 9 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1645-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1645-1"> 100 </a> </td> <td >   </td> <td >   </td> <td > 70 </td> <td class="s"> my $colspec = ($self->{attr}{columnalign} || '') eq 'left' ? 'l' : 'c'; </td> </tr> <tr> <td class="h" > <a name="1646">1646</a> </td> <td class="c3" > 9 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 36 </td> <td class="s"> my $colspecs = $colspec x $cols; </td> </tr> <tr> <td class="h" > <a name="1647">1647</a> </td> <td class="c3" > 9 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 91 </td> <td class="s"> return ("\\begin{array}{$colspecs}\n" . </td> </tr> <tr> <td class="h" > <a name="1648">1648</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> join('', map(" $_ \\\\\n", @child_str)) . </td> </tr> <tr> <td class="h" > <a name="1649">1649</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\\end{array}\n"); </td> </tr> <tr> <td class="h" > <a name="1650">1650</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1651">1651</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1652">1652</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mtr </td> </tr> <tr> <td class="h" > <a name="1653">1653</a> </td> <td class="c3" > 304 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1653-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 672 </td> <td class="s"> if ($tag eq 'mtr') { </td> </tr> <tr> <td class="h" > <a name="1654">1654</a> </td> <td class="c3" > 19 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 89 </td> <td class="s"> return join ' & ', @child_str; </td> </tr> <tr> <td class="h" > <a name="1655">1655</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1656">1656</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1657">1657</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # mstyle </td> </tr> <tr> <td class="h" > <a name="1658">1658</a> </td> <td class="c3" > 285 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1658-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1439 </td> <td class="s"> if ($tag eq 'mstyle') { </td> </tr> <tr> <td class="h" > <a name="1659">1659</a> </td> <td class="c3" > 285 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 1385 </td> <td class="s"> @child_str = grep $_ ne '', @child_str; </td> </tr> <tr> <td class="h" > <a name="1660">1660</a> </td> <td class="c3" > 285 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1660-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 793 </td> <td class="s"> if ($self->parent->{tag} eq 'math') { </td> </tr> <tr> <td class="h" > <a name="1661">1661</a> </td> <td class="c3" > 273 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1661-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 745 </td> <td class="s"> push @child_str, ' ' unless @child_str; </td> </tr> <tr> <td class="h" > <a name="1662">1662</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # The top-level mstyle </td> </tr> <tr> <td class="h" > <a name="1663">1663</a> </td> <td class="c3" > 273 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1663-1"> 50 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1663-1"> 33 </a> </td> <td >   </td> <td >   </td> <td > 3553 </td> <td class="s"> return (defined $self->{attr}{displaystyle} && </td> </tr> <tr> <td class="h" > <a name="1664">1664</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> $self->{attr}{displaystyle} eq 'true') ? </td> </tr> <tr> <td class="h" > <a name="1665">1665</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "\$\$@child_str\$\$" : "\$@child_str\$"; </td> </tr> <tr> <td class="h" > <a name="1666">1666</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1667">1667</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> else { </td> </tr> <tr> <td class="h" > <a name="1668">1668</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # It better be a font changing command </td> </tr> <tr> <td class="h" > <a name="1669">1669</a> </td> <td class="c3" > 12 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1669-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 62 </td> <td class="s"> return $child_str[0] if $self->{attr}{mathvariant}; </td> </tr> <tr> <td class="h" > <a name="1670">1670</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 33 </td> <td class="s"> my ($attr) = map($self->{attr}{$_}, </td> </tr> <tr> <td class="h" > <a name="1671">1671</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> grep $self->{attr}{$_}, </td> </tr> <tr> <td class="h" > <a name="1672">1672</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> qw(fontweight fontfamily)); </td> </tr> <tr> <td class="h" > <a name="1673">1673</a> </td> <td class="c3" > 6 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1673-1"> 50 </a> </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1673-1"> 33 </a> </td> <td >   </td> <td >   </td> <td > 155 </td> <td class="s"> return $attr && $LatexFont{$attr} ? </td> </tr> <tr> <td class="h" > <a name="1674">1674</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> "$LatexFont{$attr}\{$child_str[0]}" : $child_str[0]; </td> </tr> <tr> <td class="h" > <a name="1675">1675</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1676">1676</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1677">1677</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1678">1678</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1679">1679</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1680">1680</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns the next sibling of a node </td> </tr> <tr> <td class="h" > <a name="1681">1681</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1682">1682</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: node object or undef </td> </tr> <tr> <td class="h" > <a name="1683">1683</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub nextSibling { </td> </tr> <tr> <td class="h" > <a name="1684">1684</a> </td> <td class="c3" > 51 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1684-1"> 51 </a> </td> <td >   </td> <td > 79 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="1685">1685</a> </td> <td class="c3" > 51 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 119 </td> <td class="s"> my $parent = $self->parent; </td> </tr> <tr> <td class="h" > <a name="1686">1686</a> </td> <td class="c3" > 51 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 104 </td> <td class="s"> for (my $i=0; $i<@{$parent->{children}}; $i++) { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 64 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 194 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1687">1687</a> </td> <td class="c3" > 64 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1687-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 379 </td> <td class="s"> return $parent->{children}[$i+1] if $self eq $parent->{children}[$i]; </td> </tr> <tr> <td class="h" > <a name="1688">1688</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1689">1689</a> </td> <td class="c0" > 0 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 0 </td> <td class="s"> return $Null; </td> </tr> <tr> <td class="h" > <a name="1690">1690</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1691">1691</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1692">1692</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns the tag of a node </td> </tr> <tr> <td class="h" > <a name="1693">1693</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1694">1694</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: string </td> </tr> <tr> <td class="h" > <a name="1695">1695</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub nodeName : method { </td> </tr> <tr> <td class="h" > <a name="1696">1696</a> </td> <td class="c3" > 1098 </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1696-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1696-1"> 1098 </a> </td> <td >   </td> <td > 6707 </td> <td class="s"> return $_[0]{tag} || ''; </td> </tr> <tr> <td class="h" > <a name="1697">1697</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1698">1698</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1699">1699</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns the text of a text node </td> </tr> <tr> <td class="h" > <a name="1700">1700</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1701">1701</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: string </td> </tr> <tr> <td class="h" > <a name="1702">1702</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub nodeValue : method { </td> </tr> <tr> <td class="h" > <a name="1703">1703</a> </td> <td class="c3" > 910 </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1703-1"> 100 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1703-1"> 910 </a> </td> <td >   </td> <td > 4158 </td> <td class="s"> return $_[0]{text} || ''; </td> </tr> <tr> <td class="h" > <a name="1704">1704</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1705">1705</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1706">1706</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns the parent of a node </td> </tr> <tr> <td class="h" > <a name="1707">1707</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: none </td> </tr> <tr> <td class="h" > <a name="1708">1708</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: parent node object or undef </td> </tr> <tr> <td class="h" > <a name="1709">1709</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub parent : method { </td> </tr> <tr> <td class="h" > <a name="1710">1710</a> </td> <td class="c3" > 970 </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--condition.html#1710-1"> 33 </a> </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1710-1"> 970 </a> </td> <td >   </td> <td > 10665 </td> <td class="s"> return $Parent{$_[0]} || $Null; </td> </tr> <tr> <td class="h" > <a name="1711">1711</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1712">1712</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1713">1713</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns the previous sibling of a node </td> </tr> <tr> <td class="h" > <a name="1714">1714</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1715">1715</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: node object or undef </td> </tr> <tr> <td class="h" > <a name="1716">1716</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub previousSibling { </td> </tr> <tr> <td class="h" > <a name="1717">1717</a> </td> <td class="c3" > 11 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1717-1"> 11 </a> </td> <td >   </td> <td > 16 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="1718">1718</a> </td> <td class="c3" > 11 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 25 </td> <td class="s"> my $parent = $self->parent; </td> </tr> <tr> <td class="h" > <a name="1719">1719</a> </td> <td class="c3" > 11 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 24 </td> <td class="s"> for (my $i=1; $i<@{$parent->{children}}; $i++) { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 12 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 37 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1720">1720</a> </td> <td class="c3" > 6 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1720-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 33 </td> <td class="s"> return $parent->{children}[$i-1] if $self eq $parent->{children}[$i]; </td> </tr> <tr> <td class="h" > <a name="1721">1721</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1722">1722</a> </td> <td class="c3" > 6 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 14 </td> <td class="s"> return $Null; </td> </tr> <tr> <td class="h" > <a name="1723">1723</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1724">1724</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1725">1725</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Removes a given child node from a node </td> </tr> <tr> <td class="h" > <a name="1726">1726</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: child node </td> </tr> <tr> <td class="h" > <a name="1727">1727</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: None </td> </tr> <tr> <td class="h" > <a name="1728">1728</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Side-effects: May affect children of the node </td> </tr> <tr> <td class="h" > <a name="1729">1729</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub removeChild : method { </td> </tr> <tr> <td class="h" > <a name="1730">1730</a> </td> <td class="c3" > 626 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1730-1"> 626 </a> </td> <td >   </td> <td > 1230 </td> <td class="s"> my ($self, $child) = @_; </td> </tr> <tr> <td class="h" > <a name="1731">1731</a> </td> <td class="c3" > 626 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1731-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 1618 </td> <td class="s"> @{$self->{children}} = grep $_ ne $child, @{$self->{children}} </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 626 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2234 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 626 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7991 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1732">1732</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $self->{children}; </td> </tr> <tr> <td class="h" > <a name="1733">1733</a> </td> <td class="c3" > 626 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3136 </td> <td class="s"> delete $Parent{$child}; </td> </tr> <tr> <td class="h" > <a name="1734">1734</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1735">1735</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1736">1736</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Replaces one child node object with another </td> </tr> <tr> <td class="h" > <a name="1737">1737</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: old child node object, new child node object </td> </tr> <tr> <td class="h" > <a name="1738">1738</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: None </td> </tr> <tr> <td class="h" > <a name="1739">1739</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub replaceChild : method { </td> </tr> <tr> <td class="h" > <a name="1740">1740</a> </td> <td class="c3" > 30 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1740-1"> 30 </a> </td> <td >   </td> <td > 65 </td> <td class="s"> my ($self, $new, $old) = @_; </td> </tr> <tr> <td class="h" > <a name="1741">1741</a> </td> <td class="c3" > 30 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1741-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 40 </td> <td class="s"> @{$self->{children}} = map $_ eq $old ? $new : $_, @{$self->{children}}; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 30 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 8342 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 30 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 248 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1742">1742</a> </td> <td class="c3" > 30 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 659 </td> <td class="s"> delete $Parent{$old}; </td> </tr> <tr> <td class="h" > <a name="1743">1743</a> </td> <td class="c3" > 30 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 213 </td> <td class="s"> $Parent{$new} = $self; </td> </tr> <tr> <td class="h" > <a name="1744">1744</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1745">1745</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1746">1746</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Sets one or more attributes on a node object </td> </tr> <tr> <td class="h" > <a name="1747">1747</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: set of attribute/value pairs </td> </tr> <tr> <td class="h" > <a name="1748">1748</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: None </td> </tr> <tr> <td class="h" > <a name="1749">1749</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub setAttribute : method { </td> </tr> <tr> <td class="h" > <a name="1750">1750</a> </td> <td class="c3" > 892 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1750-1"> 892 </a> </td> <td >   </td> <td > 1406 </td> <td class="s"> my $self = shift; </td> </tr> <tr> <td class="h" > <a name="1751">1751</a> </td> <td class="c3" > 892 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1751-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 3195 </td> <td class="s"> if (@_) { </td> </tr> <tr> <td class="h" > <a name="1752">1752</a> </td> <td class="c3" > 892 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1752-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 3142 </td> <td class="s"> $self->{attr} = {} unless $self->{attr}; </td> </tr> <tr> <td class="h" > <a name="1753">1753</a> </td> <td class="c3" > 892 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1753-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 3558 </td> <td class="s"> $self->{attrlist} = [] unless $self->{attrlist}; </td> </tr> <tr> <td class="h" > <a name="1754">1754</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1755">1755</a> </td> <td class="c3" > 892 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4462 </td> <td class="s"> while (my($aname, $aval) = splice(@_, 0, 2)) { </td> </tr> <tr> <td class="h" > <a name="1756">1756</a> </td> <td class="c3" > 1988 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3480 </td> <td class="s"> $aval =~ s/\n//g; </td> </tr> <tr> <td class="h" > <a name="1757">1757</a> </td> <td class="c3" > 1988 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1757-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 6110 </td> <td class="s"> push @{$self->{attrlist}}, $aname unless defined $self->{attr}{$aname}; </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 1988 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4580 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1758">1758</a> </td> <td class="c3" > 1988 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 12232 </td> <td class="s"> $self->{attr}{$aname} = $aval; </td> </tr> <tr> <td class="h" > <a name="1759">1759</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1760">1760</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1761">1761</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1762">1762</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns the ASCII representation of a node object </td> </tr> <tr> <td class="h" > <a name="1763">1763</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Arguments: None </td> </tr> <tr> <td class="h" > <a name="1764">1764</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> # Returns: Text string </td> </tr> <tr> <td class="h" > <a name="1765">1765</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> sub text : method { </td> </tr> <tr> <td class="h" > <a name="1766">1766</a> </td> <td class="c3" > 3697 </td> <td >   </td> <td >   </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--subroutine.html#1766-1"> 3697 </a> </td> <td >   </td> <td > 4232 </td> <td class="s"> my ($self) = @_; </td> </tr> <tr> <td class="h" > <a name="1767">1767</a> </td> <td class="c3" > 3697 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1767-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 19475 </td> <td class="s"> return $self->{text} if defined $self->{text}; </td> </tr> <tr> <td class="h" > <a name="1768">1768</a> </td> <td class="c3" > 2400 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 3576 </td> <td class="s"> my $tag = $self->{tag}; </td> </tr> <tr> <td class="h" > <a name="1769">1769</a> </td> <td class="c3" > 2400 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 7578 </td> <td class="s"> my $attr = join '', map(" $_=\"" . </td> </tr> <tr> <td class="h" > <a name="1770">1770</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> ($_ eq 'xmlns' ? $self->{attr}{$_} : </td> </tr> <tr> <td class="h" > <a name="1771">1771</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> Text::ASCIIMathML::_xml_encode($self->{attr}{$_})) . </td> </tr> <tr> <td class="h" > <a name="1772">1772</a> </td> <td class="c3" > 2400 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1772-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 4506 </td> <td class="s"> "\"", @{$self->{attrlist}}) </td> </tr> <tr> <td class="h" > <a > </a> </td> <td >   </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#-2"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1773">1773</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> if $tag; </td> </tr> <tr> <td class="h" > <a name="1774">1774</a> </td> <td class="c3" > 2400 </td> <td class="c3" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1774-1"> 100 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 3120 </td> <td class="s"> if (@{$self->{children}}) { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 2400 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 5736 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1775">1775</a> </td> <td class="c3" > 2378 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 9058 </td> <td class="s"> my $child_str; </td> </tr> <tr> <td class="h" > <a name="1776">1776</a> </td> <td class="c3" > 2378 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 2891 </td> <td class="s"> foreach (@{$self->{children}}) { </td> </tr> <tr> <td class="h" > <a > </a> </td> <td class="c3" > 2378 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 4696 </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1777">1777</a> </td> <td class="c3" > 3423 </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td > 8414 </td> <td class="s"> $child_str .= $_->text; </td> </tr> <tr> <td class="h" > <a name="1778">1778</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1779">1779</a> </td> <td class="c3" > 2378 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1779-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 14023 </td> <td class="s"> return $tag ? "<$tag$attr>$child_str</$tag>" : $child_str; </td> </tr> <tr> <td class="h" > <a name="1780">1780</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1781">1781</a> </td> <td class="c3" > 22 </td> <td class="c0" > <a href="blib-lib-Text-ASCIIMathML-pm--branch.html#1781-1"> 50 </a> </td> <td >   </td> <td >   </td> <td >   </td> <td > 99 </td> <td class="s"> return $tag ? "<$tag$attr/>" : ''; </td> </tr> <tr> <td class="h" > <a name="1782">1782</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1783">1783</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> } </td> </tr> <tr> <td class="h" > <a name="1784">1784</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s">   </td> </tr> <tr> <td class="h" > <a name="1785">1785</a> </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td >   </td> <td class="s"> 1; </td> </tr> </table> </body> </html>