State machine - Pramod Pavithran (computer science,cusat, 2003)