<?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# -> Bool</span> <a name="line-3"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>is_symbol</span> <span class='hs-comment'>-- Char# -> Bool</span> <a name="line-4"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>is_any</span> <span class='hs-comment'>-- Char# -> Bool</span> <a name="line-5"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>is_space</span> <span class='hs-comment'>-- Char# -> Bool</span> <a name="line-6"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>is_lower</span> <span class='hs-comment'>-- Char# -> Bool</span> <a name="line-7"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>is_upper</span> <span class='hs-comment'>-- Char# -> Bool</span> <a name="line-8"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>is_digit</span> <span class='hs-comment'>-- Char# -> Bool</span> <a name="line-9"></a> <span class='hs-layout'>,</span> <span class='hs-varid'>is_alphanum</span> <span class='hs-comment'>-- Char# -> 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'>.&.</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'>-></span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-></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'>.&.</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'>-></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'>-></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'>-></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'>-></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'>>=</span> <span class='hs-chr'>'0'</span> <span class='hs-varop'>&&</span> <span class='hs-varid'>c</span> <span class='hs-varop'><=</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'>-></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'>>=</span> <span class='hs-chr'>'a'</span> <span class='hs-varop'>&&</span> <span class='hs-varid'>c</span> <span class='hs-varop'><=</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'>>=</span> <span class='hs-chr'>'A'</span> <span class='hs-varop'>&&</span> <span class='hs-varid'>c</span> <span class='hs-varop'><=</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'>-></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'>>=</span> <span class='hs-chr'>'0'</span> <span class='hs-varop'>&&</span> <span class='hs-varid'>c</span> <span class='hs-varop'><=</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'>-></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'>>=</span> <span class='hs-chr'>'A'</span> <span class='hs-varop'>&&</span> <span class='hs-varid'>c</span> <span class='hs-varop'><=</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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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-42"></a> <span class='hs-chr'>'\39'</span> <span class='hs-keyglyph'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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-64"></a> <span class='hs-chr'>'\61'</span> <span class='hs-keyglyph'>-></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'>-></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-66"></a> <span class='hs-chr'>'\63'</span> <span class='hs-keyglyph'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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'>-></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>