This is an example of DesignPattern of first paragraph