Extension refactoring #1