makes Read method virtual