splitting out functions that generate population data and functions that generate the sample data