refactoring MSC construction