implemented readBlockData()