refactoring of cosmos*-vp