new design patterns added