Design Pattern ex1