Implementing new design. Compileable