Component system refactoring