fixed data extraction back to original functionality so need to handle structs now