input: 2;
output: 1;

tables:

conversion[16] = {`0',`1',`2',`3',`4',`5',`6',`7',
                  `8',`9',`a',`b',`c',`d',`e',`f'};

states: ampersand;

expressions:
"&"			=> <ampersand>;
@"00-@"FF		=> \1;
.			=> "^^^^"
                           #(\1 div: @"1000)
                           #((\1 mod: @"1000) div: @"100)
                           #((\1 mod: @"100) div: @"10)
                           #(\1 mod: @"10);

<ampersand>"Agrave;"	=> @"C0 <INITIAL>;
<ampersand>"Aacute;"	=> @"C1 <INITIAL>;
<ampersand>"Acirc;"	=> @"C2 <INITIAL>;
<ampersand>"Atilde;"	=> @"C3 <INITIAL>;
<ampersand>"Auml;"	=> @"C4 <INITIAL>;
<ampersand>"Aring;"	=> @"C5 <INITIAL>;
<ampersand>"AElig;"	=> @"C6 <INITIAL>;
<ampersand>"Ccedil;"	=> @"C7 <INITIAL>;
<ampersand>"Egrave;"	=> @"C8 <INITIAL>;
<ampersand>"Eacute;"	=> @"C9 <INITIAL>;
<ampersand>"Ecirc;"	=> @"CA <INITIAL>;
<ampersand>"Euml;"	=> @"CB <INITIAL>;
<ampersand>"Igrave;"	=> @"CC <INITIAL>;
<ampersand>"Iacute;"	=> @"CD <INITIAL>;
<ampersand>"Icirc;"	=> @"CE <INITIAL>;
<ampersand>"Iuml;"	=> @"CF <INITIAL>;
<ampersand>"ETH;"	=> @"D0 <INITIAL>;
<ampersand>"Ntilde;"	=> @"D1 <INITIAL>;
<ampersand>"Ograve;"	=> @"D2 <INITIAL>;
<ampersand>"Oacute;"	=> @"D3 <INITIAL>;
<ampersand>"Ocirc;"	=> @"D4 <INITIAL>;
<ampersand>"Otilde;"	=> @"D5 <INITIAL>;
<ampersand>"Ouml;"	=> @"D6 <INITIAL>;
<ampersand>"Oslash;"	=> @"D8 <INITIAL>;
<ampersand>"Ugrave;"	=> @"D9 <INITIAL>;
<ampersand>"Uacute;"	=> @"DA <INITIAL>;
<ampersand>"Ucirc;"	=> @"DB <INITIAL>;
<ampersand>"Uuml;"	=> @"DC <INITIAL>;
<ampersand>"Yacute;"	=> @"DD <INITIAL>;
<ampersand>"THORN;"	=> @"DE <INITIAL>;
<ampersand>"szlig;"	=> @"DF <INITIAL>;
<ampersand>"agrave;"	=> @"E0 <INITIAL>;
<ampersand>"aacute;"	=> @"E1 <INITIAL>;
<ampersand>"acirc;"	=> @"E2 <INITIAL>;
<ampersand>"atilde;"	=> @"E3 <INITIAL>;
<ampersand>"auml;"	=> @"E4 <INITIAL>;
<ampersand>"aring;"	=> @"E5 <INITIAL>;
<ampersand>"aelig;"	=> @"E6 <INITIAL>;
<ampersand>"ccedil;"	=> @"E7 <INITIAL>;
<ampersand>"egrave;"	=> @"E8 <INITIAL>;
<ampersand>"eacute;"	=> @"E9 <INITIAL>;
<ampersand>"ecirc;"	=> @"EA <INITIAL>;
<ampersand>"euml;"	=> @"EB <INITIAL>;
<ampersand>"igrave;"	=> @"EC <INITIAL>;
<ampersand>"iacute;"	=> @"ED <INITIAL>;
<ampersand>"icirc;"	=> @"EE <INITIAL>;
<ampersand>"iuml;"	=> @"EF <INITIAL>;
<ampersand>"eth;"	=> @"F0 <INITIAL>;
<ampersand>"ntilde;"	=> @"F1 <INITIAL>;
<ampersand>"ograve;"	=> @"F2 <INITIAL>;
<ampersand>"oacute;"	=> @"F3 <INITIAL>;
<ampersand>"ocirc;"	=> @"F4 <INITIAL>;
<ampersand>"otilde;"	=> @"F5 <INITIAL>;
<ampersand>"ouml;"	=> @"F6 <INITIAL>;
<ampersand>"oslash;"	=> @"F8 <INITIAL>;
<ampersand>"ugrave;"	=> @"F9 <INITIAL>;
<ampersand>"uacute;"	=> @"FA <INITIAL>;
<ampersand>"ucirc;"	=> @"FB <INITIAL>;
<ampersand>"uuml;"	=> @"FC <INITIAL>;
<ampersand>"yacute;"	=> @"FD <INITIAL>;
<ampersand>"thorn;"	=> @"FE <INITIAL>;
<ampersand>.		=> "&" <= \1 <INITIAL>;
