To Version Abstract Factory Homework