changed to add factory