call Read() instead of ReadFrom