Factory Method complete.