work in progress models (this won't compile)