%{
#include "token.h"
%}

%%
^\..*                   return(COMMENT);
^#.*                    return(COMMENT);
&colon\.                return(COLON);
:                       return(COLON);
[^:&\n]*                return(NTEXT);
&                       return(NTEXT);
\n                      return(NL);
:h[0-9][ ].*            return(HDR);
:i1.*                   return(NDX1);
:i2[ ].*                return(NDX2);
:hpt\.                  return(HPT);
:ehpt\.                 return(EHPT);
:p\.                    return(PARA);
:lp\.                   return(PARA);
:fnref[^.\n]*\.         return(FNREF);
:hdref[^.\n]*\.         return(HDREF);
:hp[0-9]\.              return(STYLE);
:ehp[0-9]\.             return(ESTYLE);
:lm\.                   return(MARGIN);
:lm[ ].*\.              return(MARGIN);
:nt\.                   return(NOTE);
:nt[ ].*\.              return(NOTE);
:ent\.                  return(ENOTE);
:xmp\.                  return(XMP);
:exmp\.                 return(EXMP);
:li\..*                 return(LI);
:[u|s|o]l\.             return(SL);
:[u|s|o]l[ ]compact\.   return(SLC);
:e[u|s|o]l\.            return(ESL);
:dl[ ].*\.              return(DL);
:edl\.                  return(EDL);
:dthd\.                 return(DTHD);
:ddhd\.                 return(DDHD);
:dt\..*                 return(DT);
:dd\..*                 return(DD);
:parml[ ].*\.           return(DL);
:eparml\.               return(EDL);
:pt\.                   return(DT);
:pd\.                   return(DD);
:artwork[ ].*\.         return(ARTWORK);
:fn[ ].*\.              return(FN);
:efn\.                  return(EFN);
:userdoc\.              return(USERDOC);
:euserdoc\.             return(EUSERDOC);
%%
#include "main.c"
