Refactored struture to match new design.