Do not use NodeFactory::Ptr