corrected factory to use name instead of first/last