refactoring X::Hoge