added a data reader