ModelFactory implemented