documentation, and new model