Changes implementation to new design