second part design patterns 2560657