tryatched reading and reading functions