More inheritance refactoring