public override object GetOutput(Type type)
 {
     if (type == typeof(XmlNodeList) || type.IsSubclassOf(typeof(XmlNodeList)))
     {
         if (_inputNodeList == null)
         {
             _inputNodeList = Utils.AllDescendantNodes(_containingDocument, true);
         }
         return((XmlNodeList)GetOutput());
     }
     else if (type == typeof(XmlDocument) || type.IsSubclassOf(typeof(XmlDocument)))
     {
         if (_inputNodeList != null)
         {
             throw new ArgumentException(SR.Cryptography_Xml_TransformIncorrectInputType, nameof(type));
         }
         return((XmlDocument)GetOutput());
     }
     else
     {
         throw new ArgumentException(SR.Cryptography_Xml_TransformIncorrectInputType, nameof(type));
     }
 }