This should be refactored up into the project model.