Pages 172 - 180 Factory Pattern