ADDED a factory method.