Factory Method (structural)
Factory Method (realworld)