some progress. we're going to have to change the data model..