guard to overwrite empty data