more robust `flatten_dataframe`