data parser revised