3 design patterns score implementation pending