how did you generate the synthetic data?