abstract class Rexp+− case object ZERO extends Rexp+− case object ONE extends Rexp+− case class CHAR(c: Char) extends Rexp+− case class ALT(r1: Rexp, r2: Rexp) extends Rexp +− case class SEQ(r1: Rexp, r2: Rexp) extends Rexp +− case class STAR(r: Rexp) extends Rexp +−