getdata - assessment up to point 4
getdata -- assess point 5 almost done (needs a bit of polish)