anchor.diff:  
   let c = pages |> XDocument.Parse |> xnested ["countries";"country"] 
   
  -c |> xelem "region" |> xvalue
  +let prn = printfn "%s"
   
  -c |> xelem "incomeLevel" |> xattr "id"
  +c |> xelem "region" |> xvalue |> prn
   
  -c |> xelem "region" |> xattr "id"
  +c |> xelem "incomeLevel" |> xattr "id" |> prn
   
  -/// System.NullReferenceException, if attribute not exists
  -/// c |> xelem "iso2Code" |> xattr "id"+c |> xelem "region" |> xattr "id" |> prn
  +
  +/// System.NullReferenceException, if attribute does not exist:
  +(try c |> xelem "iso2Code" |> xattr "id" with | ex -> "NullReferenceException: " + ex.Message) |> prn
positive.code:     use response = response
      let stream = response.GetResponseStream ()
      use reader = new StreamReader (stream)
      return!  reader.AsyncReadToEnd() }
  
  let worldBankUrl (functions, props) =
      seq { yield "http://api.worldbank.org"
  
negative.code: // hard coded document namespace
  let wb = "http://www.worldbank.org"
  
  /// unsafe helper functions, should rely on option values
  
  let xattr s (el:XElement) = el.Attribute(XName.Get(s)).Value
  
  let xelem s (el:XContainer) = el.Element((XName.Get(s,wb)))
  