further implementation of data parser