add factory.