updated data model/singleton