anchor.diff:              with
               | :? SharpXmlException -> Unchecked.defaultof<'T>
   
  +    /// Deserialize the input reader into the specified type
  +    static member DeserializeFromReader<'T> (reader : TextReader) =
  +        XmlSerializer.DeserializeFromString<'T>(reader.ReadToEnd())
  +
  +    /// Deserialize the input stream into the specified type
  +    static member DeserializeFromStream<'T> (stream : Stream) =
  +        use reader = new StreamReader(stream, utf8encoding)
  +        XmlSerializer.DeserializeFromString<'T>(reader.ReadToEnd())
  +
  +    /// Serialize the given object into a XML string
       static member SerializeToString<'T> (element : 'T) =
           let sb = StringBuilder()
           use writer = new StringWriter(sb, CultureInfo.InvariantCulture)
  
positive.code:         Serializer.writeType writer element
          sb.ToString()
  
  
negative.code: /// XML serializer
  type XmlSerializer() =
  
      /// UTF-8 encoding without BOM
      static let utf8encoding = UTF8Encoding(false)
  
      /// Deserialize the input string into the specified type
      static member DeserializeFromString<'T> input =
          if empty input then Unchecked.defaultof<'T> else
              try
                  let reader = Deserializer.getReaderFunc typeof<'T>
  