refactor to expose only data lists to public scope