data re-factored