Sophie

Sophie

distrib > Fedora > 14 > i386 > by-pkgid > 8d1ef08c9e0d44c69764afc615a03d0d > files > 1688

ghc-ghc-devel-6.12.3-5.fc14.i686.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<!-- Generated by HsColour, http://www.cs.york.ac.uk/fp/darcs/hscolour/ -->
<title>parser/Ctype.lhs</title>
<link type='text/css' rel='stylesheet' href='hscolour.css' />
</head>
<body>
Character classification

\begin{code}
<pre><a name="line-1"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Ctype</span>
<a name="line-2"></a>	<span class='hs-layout'>(</span> <span class='hs-varid'>is_ident</span>	<span class='hs-comment'>-- Char# -&gt; Bool</span>
<a name="line-3"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>is_symbol</span>	<span class='hs-comment'>-- Char# -&gt; Bool</span>
<a name="line-4"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>is_any</span>	<span class='hs-comment'>-- Char# -&gt; Bool</span>
<a name="line-5"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>is_space</span>	<span class='hs-comment'>-- Char# -&gt; Bool</span>
<a name="line-6"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>is_lower</span>	<span class='hs-comment'>-- Char# -&gt; Bool</span>
<a name="line-7"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>is_upper</span>	<span class='hs-comment'>-- Char# -&gt; Bool</span>
<a name="line-8"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>is_digit</span>	<span class='hs-comment'>-- Char# -&gt; Bool</span>
<a name="line-9"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>is_alphanum</span>   <span class='hs-comment'>-- Char# -&gt; Bool</span>
<a name="line-10"></a>
<a name="line-11"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>is_decdigit</span><span class='hs-layout'>,</span> <span class='hs-varid'>is_hexdigit</span><span class='hs-layout'>,</span> <span class='hs-varid'>is_octdigit</span>
<a name="line-12"></a>	<span class='hs-layout'>,</span> <span class='hs-varid'>hexDigit</span><span class='hs-layout'>,</span> <span class='hs-varid'>octDecDigit</span>
<a name="line-13"></a>	<span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
<a name="line-14"></a>
<a name="line-15"></a><span class='hs-cpp'>#include "HsVersions.h"</span>
<a name="line-16"></a>
<a name="line-17"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Int</span>		<span class='hs-layout'>(</span> <span class='hs-conid'>Int32</span> <span class='hs-layout'>)</span>
<a name="line-18"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Bits</span>	<span class='hs-layout'>(</span> <span class='hs-conid'>Bits</span><span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varop'>.&amp;.</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-layout'>)</span>
<a name="line-19"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Char</span>	<span class='hs-layout'>(</span> <span class='hs-varid'>ord</span><span class='hs-layout'>,</span> <span class='hs-varid'>chr</span> <span class='hs-layout'>)</span>
<a name="line-20"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Panic</span>
</pre>\end{code}

Bit masks

\begin{code}
<pre><a name="line-1"></a><a name="cIdent"></a><span class='hs-definition'>cIdent</span><span class='hs-layout'>,</span> <span class='hs-varid'>cSymbol</span><span class='hs-layout'>,</span> <span class='hs-varid'>cAny</span><span class='hs-layout'>,</span> <span class='hs-varid'>cSpace</span><span class='hs-layout'>,</span> <span class='hs-varid'>cLower</span><span class='hs-layout'>,</span> <span class='hs-varid'>cUpper</span><span class='hs-layout'>,</span> <span class='hs-varid'>cDigit</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Int</span>
<a name="line-2"></a><span class='hs-definition'>cIdent</span>  <span class='hs-keyglyph'>=</span>  <span class='hs-num'>1</span>
<a name="line-3"></a><a name="cSymbol"></a><span class='hs-definition'>cSymbol</span> <span class='hs-keyglyph'>=</span>  <span class='hs-num'>2</span>
<a name="line-4"></a><a name="cAny"></a><span class='hs-definition'>cAny</span>    <span class='hs-keyglyph'>=</span>  <span class='hs-num'>4</span>
<a name="line-5"></a><a name="cSpace"></a><span class='hs-definition'>cSpace</span>  <span class='hs-keyglyph'>=</span>  <span class='hs-num'>8</span>
<a name="line-6"></a><a name="cLower"></a><span class='hs-definition'>cLower</span>  <span class='hs-keyglyph'>=</span> <span class='hs-num'>16</span>
<a name="line-7"></a><a name="cUpper"></a><span class='hs-definition'>cUpper</span>  <span class='hs-keyglyph'>=</span> <span class='hs-num'>32</span>
<a name="line-8"></a><a name="cDigit"></a><span class='hs-definition'>cDigit</span>  <span class='hs-keyglyph'>=</span> <span class='hs-num'>64</span>
</pre>\end{code}

The predicates below look costly, but aren't, GHC+GCC do a great job
at the big case below.

\begin{code}
<pre><a name="line-1"></a><a name="is_ctype"></a><span class='hs-comment'>{-# INLINE is_ctype #-}</span>
<a name="line-2"></a><span class='hs-definition'>is_ctype</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span>
<a name="line-3"></a><span class='hs-definition'>is_ctype</span> <span class='hs-varid'>mask</span> <span class='hs-varid'>c</span> <span class='hs-keyglyph'>=</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-layout'>(</span><span class='hs-varid'>charType</span> <span class='hs-varid'>c</span><span class='hs-layout'>)</span> <span class='hs-varop'>.&amp;.</span> <span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>mask</span><span class='hs-layout'>)</span> <span class='hs-varop'>/=</span> <span class='hs-layout'>(</span><span class='hs-num'>0</span><span class='hs-keyglyph'>::</span><span class='hs-conid'>Int32</span><span class='hs-layout'>)</span>
<a name="line-4"></a>
<a name="line-5"></a><a name="is_ident"></a><span class='hs-definition'>is_ident</span><span class='hs-layout'>,</span> <span class='hs-varid'>is_symbol</span><span class='hs-layout'>,</span> <span class='hs-varid'>is_any</span><span class='hs-layout'>,</span> <span class='hs-varid'>is_space</span><span class='hs-layout'>,</span> <span class='hs-varid'>is_lower</span><span class='hs-layout'>,</span> <span class='hs-varid'>is_upper</span><span class='hs-layout'>,</span> <span class='hs-varid'>is_digit</span><span class='hs-layout'>,</span>
<a name="line-6"></a>    <span class='hs-varid'>is_alphanum</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span>
<a name="line-7"></a><span class='hs-definition'>is_ident</span>  <span class='hs-keyglyph'>=</span> <span class='hs-varid'>is_ctype</span> <span class='hs-varid'>cIdent</span>
<a name="line-8"></a><a name="is_symbol"></a><span class='hs-definition'>is_symbol</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>is_ctype</span> <span class='hs-varid'>cSymbol</span>
<a name="line-9"></a><a name="is_any"></a><span class='hs-definition'>is_any</span>    <span class='hs-keyglyph'>=</span> <span class='hs-varid'>is_ctype</span> <span class='hs-varid'>cAny</span>
<a name="line-10"></a><a name="is_space"></a><span class='hs-definition'>is_space</span>  <span class='hs-keyglyph'>=</span> <span class='hs-varid'>is_ctype</span> <span class='hs-varid'>cSpace</span>
<a name="line-11"></a><a name="is_lower"></a><span class='hs-definition'>is_lower</span>  <span class='hs-keyglyph'>=</span> <span class='hs-varid'>is_ctype</span> <span class='hs-varid'>cLower</span>
<a name="line-12"></a><a name="is_upper"></a><span class='hs-definition'>is_upper</span>  <span class='hs-keyglyph'>=</span> <span class='hs-varid'>is_ctype</span> <span class='hs-varid'>cUpper</span>
<a name="line-13"></a><a name="is_digit"></a><span class='hs-definition'>is_digit</span>  <span class='hs-keyglyph'>=</span> <span class='hs-varid'>is_ctype</span> <span class='hs-varid'>cDigit</span>
<a name="line-14"></a><a name="is_alphanum"></a><span class='hs-definition'>is_alphanum</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>is_ctype</span> <span class='hs-layout'>(</span><span class='hs-varid'>cLower</span><span class='hs-varop'>+</span><span class='hs-varid'>cUpper</span><span class='hs-varop'>+</span><span class='hs-varid'>cDigit</span><span class='hs-layout'>)</span>
</pre>\end{code}

Utils

\begin{code}
<pre><a name="line-1"></a><a name="hexDigit"></a><span class='hs-definition'>hexDigit</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span>
<a name="line-2"></a><span class='hs-definition'>hexDigit</span> <span class='hs-varid'>c</span> <span class='hs-keyglyph'>|</span> <span class='hs-varid'>is_decdigit</span> <span class='hs-varid'>c</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>ord</span> <span class='hs-varid'>c</span> <span class='hs-comment'>-</span> <span class='hs-varid'>ord</span> <span class='hs-chr'>'0'</span>
<a name="line-3"></a>           <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span>     <span class='hs-keyglyph'>=</span> <span class='hs-varid'>ord</span> <span class='hs-layout'>(</span><span class='hs-varid'>to_lower</span> <span class='hs-varid'>c</span><span class='hs-layout'>)</span> <span class='hs-comment'>-</span> <span class='hs-varid'>ord</span> <span class='hs-chr'>'a'</span> <span class='hs-varop'>+</span> <span class='hs-num'>10</span>
<a name="line-4"></a>
<a name="line-5"></a><a name="octDecDigit"></a><span class='hs-definition'>octDecDigit</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span>
<a name="line-6"></a><span class='hs-definition'>octDecDigit</span> <span class='hs-varid'>c</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>ord</span> <span class='hs-varid'>c</span> <span class='hs-comment'>-</span> <span class='hs-varid'>ord</span> <span class='hs-chr'>'0'</span>
<a name="line-7"></a>
<a name="line-8"></a><a name="is_decdigit"></a><span class='hs-definition'>is_decdigit</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span>
<a name="line-9"></a><span class='hs-definition'>is_decdigit</span> <span class='hs-varid'>c</span>
<a name="line-10"></a>	<span class='hs-keyglyph'>=</span>  <span class='hs-varid'>c</span> <span class='hs-varop'>&gt;=</span> <span class='hs-chr'>'0'</span> <span class='hs-varop'>&amp;&amp;</span> <span class='hs-varid'>c</span> <span class='hs-varop'>&lt;=</span> <span class='hs-chr'>'9'</span>
<a name="line-11"></a>
<a name="line-12"></a><a name="is_hexdigit"></a><span class='hs-definition'>is_hexdigit</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span>
<a name="line-13"></a><span class='hs-definition'>is_hexdigit</span> <span class='hs-varid'>c</span>
<a name="line-14"></a>	<span class='hs-keyglyph'>=</span>  <span class='hs-varid'>is_decdigit</span> <span class='hs-varid'>c</span> 
<a name="line-15"></a>	<span class='hs-varop'>||</span> <span class='hs-layout'>(</span><span class='hs-varid'>c</span> <span class='hs-varop'>&gt;=</span> <span class='hs-chr'>'a'</span> <span class='hs-varop'>&amp;&amp;</span> <span class='hs-varid'>c</span> <span class='hs-varop'>&lt;=</span> <span class='hs-chr'>'f'</span><span class='hs-layout'>)</span>
<a name="line-16"></a>	<span class='hs-varop'>||</span> <span class='hs-layout'>(</span><span class='hs-varid'>c</span> <span class='hs-varop'>&gt;=</span> <span class='hs-chr'>'A'</span> <span class='hs-varop'>&amp;&amp;</span> <span class='hs-varid'>c</span> <span class='hs-varop'>&lt;=</span> <span class='hs-chr'>'F'</span><span class='hs-layout'>)</span>
<a name="line-17"></a>
<a name="line-18"></a><a name="is_octdigit"></a><span class='hs-definition'>is_octdigit</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span>
<a name="line-19"></a><span class='hs-definition'>is_octdigit</span> <span class='hs-varid'>c</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>c</span> <span class='hs-varop'>&gt;=</span> <span class='hs-chr'>'0'</span> <span class='hs-varop'>&amp;&amp;</span> <span class='hs-varid'>c</span> <span class='hs-varop'>&lt;=</span> <span class='hs-chr'>'7'</span>
<a name="line-20"></a>
<a name="line-21"></a><a name="to_lower"></a><span class='hs-definition'>to_lower</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Char</span>
<a name="line-22"></a><span class='hs-definition'>to_lower</span> <span class='hs-varid'>c</span>
<a name="line-23"></a>  <span class='hs-keyglyph'>|</span> <span class='hs-varid'>c</span> <span class='hs-varop'>&gt;=</span>  <span class='hs-chr'>'A'</span> <span class='hs-varop'>&amp;&amp;</span> <span class='hs-varid'>c</span> <span class='hs-varop'>&lt;=</span> <span class='hs-chr'>'Z'</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>chr</span> <span class='hs-layout'>(</span><span class='hs-varid'>ord</span> <span class='hs-varid'>c</span> <span class='hs-comment'>-</span> <span class='hs-layout'>(</span><span class='hs-varid'>ord</span> <span class='hs-chr'>'A'</span> <span class='hs-comment'>-</span> <span class='hs-varid'>ord</span> <span class='hs-chr'>'a'</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-24"></a>  <span class='hs-keyglyph'>|</span> <span class='hs-varid'>otherwise</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>c</span>
</pre>\end{code}

We really mean .|. instead of + below, but GHC currently doesn't do
any constant folding with bitops. *sigh*

\begin{code}
<pre><a name="line-1"></a><a name="charType"></a><span class='hs-definition'>charType</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span>
<a name="line-2"></a><span class='hs-definition'>charType</span> <span class='hs-varid'>c</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>case</span> <span class='hs-varid'>c</span> <span class='hs-keyword'>of</span>
<a name="line-3"></a>   <span class='hs-chr'>'\0'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \000</span>
<a name="line-4"></a>   <span class='hs-chr'>'\1'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \001</span>
<a name="line-5"></a>   <span class='hs-chr'>'\2'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \002</span>
<a name="line-6"></a>   <span class='hs-chr'>'\3'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \003</span>
<a name="line-7"></a>   <span class='hs-chr'>'\4'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \004</span>
<a name="line-8"></a>   <span class='hs-chr'>'\5'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \005</span>
<a name="line-9"></a>   <span class='hs-chr'>'\6'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \006</span>
<a name="line-10"></a>   <span class='hs-chr'>'\7'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \007</span>
<a name="line-11"></a>   <span class='hs-chr'>'\8'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \010</span>
<a name="line-12"></a>   <span class='hs-chr'>'\9'</span>   <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cSpace</span>                    <span class='hs-comment'>-- \t  (not allowed in strings, so !cAny)</span>
<a name="line-13"></a>   <span class='hs-chr'>'\10'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cSpace</span>	               <span class='hs-comment'>-- \n  (ditto)</span>
<a name="line-14"></a>   <span class='hs-chr'>'\11'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cSpace</span>                    <span class='hs-comment'>-- \v  (ditto)</span>
<a name="line-15"></a>   <span class='hs-chr'>'\12'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cSpace</span>                    <span class='hs-comment'>-- \f  (ditto)</span>
<a name="line-16"></a>   <span class='hs-chr'>'\13'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cSpace</span>                    <span class='hs-comment'>--  ^M (ditto)</span>
<a name="line-17"></a>   <span class='hs-chr'>'\14'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \016</span>
<a name="line-18"></a>   <span class='hs-chr'>'\15'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \017</span>
<a name="line-19"></a>   <span class='hs-chr'>'\16'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \020</span>
<a name="line-20"></a>   <span class='hs-chr'>'\17'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \021</span>
<a name="line-21"></a>   <span class='hs-chr'>'\18'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \022</span>
<a name="line-22"></a>   <span class='hs-chr'>'\19'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \023</span>
<a name="line-23"></a>   <span class='hs-chr'>'\20'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \024</span>
<a name="line-24"></a>   <span class='hs-chr'>'\21'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \025</span>
<a name="line-25"></a>   <span class='hs-chr'>'\22'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \026</span>
<a name="line-26"></a>   <span class='hs-chr'>'\23'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \027</span>
<a name="line-27"></a>   <span class='hs-chr'>'\24'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \030</span>
<a name="line-28"></a>   <span class='hs-chr'>'\25'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \031</span>
<a name="line-29"></a>   <span class='hs-chr'>'\26'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \032</span>
<a name="line-30"></a>   <span class='hs-chr'>'\27'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \033</span>
<a name="line-31"></a>   <span class='hs-chr'>'\28'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \034</span>
<a name="line-32"></a>   <span class='hs-chr'>'\29'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \035</span>
<a name="line-33"></a>   <span class='hs-chr'>'\30'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \036</span>
<a name="line-34"></a>   <span class='hs-chr'>'\31'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \037</span>
<a name="line-35"></a>   <span class='hs-chr'>'\32'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSpace</span>             <span class='hs-comment'>--</span>
<a name="line-36"></a>   <span class='hs-chr'>'\33'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- !</span>
<a name="line-37"></a>   <span class='hs-chr'>'\34'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- "</span>
<a name="line-38"></a>   <span class='hs-chr'>'\35'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>--  #</span>
<a name="line-39"></a>   <span class='hs-chr'>'\36'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>--  $</span>
<a name="line-40"></a>   <span class='hs-chr'>'\37'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- %</span>
<a name="line-41"></a>   <span class='hs-chr'>'\38'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- &amp;</span>
<a name="line-42"></a>   <span class='hs-chr'>'\39'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>             <span class='hs-comment'>-- '</span>
<a name="line-43"></a>   <span class='hs-chr'>'\40'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- (</span>
<a name="line-44"></a>   <span class='hs-chr'>'\41'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- )</span>
<a name="line-45"></a>   <span class='hs-chr'>'\42'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>--  *</span>
<a name="line-46"></a>   <span class='hs-chr'>'\43'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- +</span>
<a name="line-47"></a>   <span class='hs-chr'>'\44'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- ,</span>
<a name="line-48"></a>   <span class='hs-chr'>'\45'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- -</span>
<a name="line-49"></a>   <span class='hs-chr'>'\46'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- .</span>
<a name="line-50"></a>   <span class='hs-chr'>'\47'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>--  /</span>
<a name="line-51"></a>   <span class='hs-chr'>'\48'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 0</span>
<a name="line-52"></a>   <span class='hs-chr'>'\49'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 1</span>
<a name="line-53"></a>   <span class='hs-chr'>'\50'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 2</span>
<a name="line-54"></a>   <span class='hs-chr'>'\51'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 3</span>
<a name="line-55"></a>   <span class='hs-chr'>'\52'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 4</span>
<a name="line-56"></a>   <span class='hs-chr'>'\53'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 5</span>
<a name="line-57"></a>   <span class='hs-chr'>'\54'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 6</span>
<a name="line-58"></a>   <span class='hs-chr'>'\55'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 7</span>
<a name="line-59"></a>   <span class='hs-chr'>'\56'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 8</span>
<a name="line-60"></a>   <span class='hs-chr'>'\57'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cDigit</span>   <span class='hs-comment'>-- 9</span>
<a name="line-61"></a>   <span class='hs-chr'>'\58'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- :</span>
<a name="line-62"></a>   <span class='hs-chr'>'\59'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- ;</span>
<a name="line-63"></a>   <span class='hs-chr'>'\60'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- &lt;</span>
<a name="line-64"></a>   <span class='hs-chr'>'\61'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- =</span>
<a name="line-65"></a>   <span class='hs-chr'>'\62'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- &gt;</span>
<a name="line-66"></a>   <span class='hs-chr'>'\63'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- ?</span>
<a name="line-67"></a>   <span class='hs-chr'>'\64'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- @</span>
<a name="line-68"></a>   <span class='hs-chr'>'\65'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- A</span>
<a name="line-69"></a>   <span class='hs-chr'>'\66'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- B</span>
<a name="line-70"></a>   <span class='hs-chr'>'\67'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- C</span>
<a name="line-71"></a>   <span class='hs-chr'>'\68'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- D</span>
<a name="line-72"></a>   <span class='hs-chr'>'\69'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- E</span>
<a name="line-73"></a>   <span class='hs-chr'>'\70'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- F</span>
<a name="line-74"></a>   <span class='hs-chr'>'\71'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- G</span>
<a name="line-75"></a>   <span class='hs-chr'>'\72'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- H</span>
<a name="line-76"></a>   <span class='hs-chr'>'\73'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- I</span>
<a name="line-77"></a>   <span class='hs-chr'>'\74'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- J</span>
<a name="line-78"></a>   <span class='hs-chr'>'\75'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- K</span>
<a name="line-79"></a>   <span class='hs-chr'>'\76'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- L</span>
<a name="line-80"></a>   <span class='hs-chr'>'\77'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- M</span>
<a name="line-81"></a>   <span class='hs-chr'>'\78'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- N</span>
<a name="line-82"></a>   <span class='hs-chr'>'\79'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- O</span>
<a name="line-83"></a>   <span class='hs-chr'>'\80'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- P</span>
<a name="line-84"></a>   <span class='hs-chr'>'\81'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- Q</span>
<a name="line-85"></a>   <span class='hs-chr'>'\82'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- R</span>
<a name="line-86"></a>   <span class='hs-chr'>'\83'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- S</span>
<a name="line-87"></a>   <span class='hs-chr'>'\84'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- T</span>
<a name="line-88"></a>   <span class='hs-chr'>'\85'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- U</span>
<a name="line-89"></a>   <span class='hs-chr'>'\86'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- V</span>
<a name="line-90"></a>   <span class='hs-chr'>'\87'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- W</span>
<a name="line-91"></a>   <span class='hs-chr'>'\88'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- X</span>
<a name="line-92"></a>   <span class='hs-chr'>'\89'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- Y</span>
<a name="line-93"></a>   <span class='hs-chr'>'\90'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cUpper</span>   <span class='hs-comment'>-- Z</span>
<a name="line-94"></a>   <span class='hs-chr'>'\91'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- [</span>
<a name="line-95"></a>   <span class='hs-chr'>'\92'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- backslash</span>
<a name="line-96"></a>   <span class='hs-chr'>'\93'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- ]</span>
<a name="line-97"></a>   <span class='hs-chr'>'\94'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>--  ^</span>
<a name="line-98"></a>   <span class='hs-chr'>'\95'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- _</span>
<a name="line-99"></a>   <span class='hs-chr'>'\96'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- `</span>
<a name="line-100"></a>   <span class='hs-chr'>'\97'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- a</span>
<a name="line-101"></a>   <span class='hs-chr'>'\98'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- b</span>
<a name="line-102"></a>   <span class='hs-chr'>'\99'</span>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- c</span>
<a name="line-103"></a>   <span class='hs-chr'>'\100'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- d</span>
<a name="line-104"></a>   <span class='hs-chr'>'\101'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- e</span>
<a name="line-105"></a>   <span class='hs-chr'>'\102'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- f</span>
<a name="line-106"></a>   <span class='hs-chr'>'\103'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- g</span>
<a name="line-107"></a>   <span class='hs-chr'>'\104'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- h</span>
<a name="line-108"></a>   <span class='hs-chr'>'\105'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- i</span>
<a name="line-109"></a>   <span class='hs-chr'>'\106'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- j</span>
<a name="line-110"></a>   <span class='hs-chr'>'\107'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- k</span>
<a name="line-111"></a>   <span class='hs-chr'>'\108'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- l</span>
<a name="line-112"></a>   <span class='hs-chr'>'\109'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- m</span>
<a name="line-113"></a>   <span class='hs-chr'>'\110'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- n</span>
<a name="line-114"></a>   <span class='hs-chr'>'\111'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- o</span>
<a name="line-115"></a>   <span class='hs-chr'>'\112'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- p</span>
<a name="line-116"></a>   <span class='hs-chr'>'\113'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- q</span>
<a name="line-117"></a>   <span class='hs-chr'>'\114'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- r</span>
<a name="line-118"></a>   <span class='hs-chr'>'\115'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- s</span>
<a name="line-119"></a>   <span class='hs-chr'>'\116'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- t</span>
<a name="line-120"></a>   <span class='hs-chr'>'\117'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- u</span>
<a name="line-121"></a>   <span class='hs-chr'>'\118'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- v</span>
<a name="line-122"></a>   <span class='hs-chr'>'\119'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- w</span>
<a name="line-123"></a>   <span class='hs-chr'>'\120'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- x</span>
<a name="line-124"></a>   <span class='hs-chr'>'\121'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- y</span>
<a name="line-125"></a>   <span class='hs-chr'>'\122'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cIdent</span>  <span class='hs-varop'>+</span> <span class='hs-varid'>cLower</span>   <span class='hs-comment'>-- z</span>
<a name="line-126"></a>   <span class='hs-chr'>'\123'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- {</span>
<a name="line-127"></a>   <span class='hs-chr'>'\124'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>--  |</span>
<a name="line-128"></a>   <span class='hs-chr'>'\125'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span>                      <span class='hs-comment'>-- }</span>
<a name="line-129"></a>   <span class='hs-chr'>'\126'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>cAny</span> <span class='hs-varop'>+</span> <span class='hs-varid'>cSymbol</span>            <span class='hs-comment'>-- ~</span>
<a name="line-130"></a>   <span class='hs-chr'>'\127'</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-num'>0</span>                         <span class='hs-comment'>-- \177</span>
<a name="line-131"></a>   <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>panic</span> <span class='hs-layout'>(</span><span class='hs-str'>"charType: "</span> <span class='hs-varop'>++</span> <span class='hs-varid'>show</span> <span class='hs-varid'>c</span><span class='hs-layout'>)</span>
</pre>\end{code}
</body>
</html>