adding synthetic data generator