242 case object T_RPAREN extends Token  | 
   242 case object T_RPAREN extends Token  | 
   243 case class T_ID(s: String) extends Token  | 
   243 case class T_ID(s: String) extends Token  | 
   244 case class T_FID(s: String) extends Token  | 
   244 case class T_FID(s: String) extends Token  | 
   245 case class T_OP(s: String) extends Token  | 
   245 case class T_OP(s: String) extends Token  | 
   246 case class T_NUM(n: Int) extends Token  | 
   246 case class T_NUM(n: Int) extends Token  | 
   247 case class T_FNUM(x: Float) extends Token  | 
   247 case class T_FNUM(x: Double) extends Token  | 
   248 case class T_KWD(s: String) extends Token  | 
   248 case class T_KWD(s: String) extends Token  | 
   249 case class T_TY(s: String) extends Token  | 
   249 case class T_TY(s: String) extends Token  | 
   250 case class T_CHR(i: Int) extends Token  | 
   250 case class T_CHR(i: Int) extends Token  | 
   251   | 
   251   | 
   252 val token : PartialFunction[(String, String), Token] = { | 
   252 val token : PartialFunction[(String, String), Token] = { | 
   254   case ("t", s) => T_TY(s) | 
   254   case ("t", s) => T_TY(s) | 
   255   case ("i", s) => T_ID(s) | 
   255   case ("i", s) => T_ID(s) | 
   256   case ("o", s) => T_OP(s) | 
   256   case ("o", s) => T_OP(s) | 
   257   case ("n", s) => T_NUM(s.toInt) | 
   257   case ("n", s) => T_NUM(s.toInt) | 
   258   case ("ch", s) => if (s == "'\\n'") T_CHR(10) else T_CHR(s(1).toInt) | 
   258   case ("ch", s) => if (s == "'\\n'") T_CHR(10) else T_CHR(s(1).toInt) | 
   259   case ("f", s) => T_FNUM(s.toFloat)  | 
   259   case ("f", s) => T_FNUM(s.toDouble)  | 
   260   case ("s", _) => T_SEMI | 
   260   case ("s", _) => T_SEMI | 
   261   case ("c", _) => T_COMMA | 
   261   case ("c", _) => T_COMMA | 
   262   case ("co", _) => T_COLON | 
   262   case ("co", _) => T_COLON | 
   263   case ("pl", _) => T_LPAREN | 
   263   case ("pl", _) => T_LPAREN | 
   264   case ("pr", _) => T_RPAREN | 
   264   case ("pr", _) => T_RPAREN |