begin rewrite of data model again