re-add ops_project function