data reader class