Just for codign design patterns