Refactored read(id)