cm invokation refactoring