Refactoring whole structure.