model.cpp