anchor.diff:                  | _ -> raise(System.ArgumentException("Unknown event type."))
               let events = changeset.Items |> Array.map infuse
               { Id = changeset.Id; Items = events }
  -        let duSeq = sut |> Seq.map ofObj
  +        let duSeq = reader |> Seq.map ofObj
           let actual = duSeq |> Seq.toList
   
           let expected = [ { Id = id; Items = [| tef |> F; teg |> G |] } ]
  
positive.code: 
      [<Theory; InMemoryXmlConventions>]
      let SutCorrectlyRoundTripsChangesetOfDiscriminatedUnions
          (sut : AtomEventStream<SerializableChangeset>)
          (tef : TestEventF)
          (teg : TestEventG)
          (id : Guid) =
  
negative.code:                 | G(x) -> x :> obj
              let events = changeset.Items |> Seq.map extract |> Seq.toArray
              { SerializableChangeset.Id = changeset.Id; Items = events }
          let duObs = Observer.Create(toObj >> writer.OnNext)
          duObs.OnNext({ Id = id; Items = [| tef |> F; teg |> G |]})
  
          let ofObj (changeset : SerializableChangeset) =
  