anchor.diff:  namespace Infers.Toys
   
   module PU =
  +  open System.Runtime.CompilerServices
     open System.Collections.Generic
     open System.IO
     open Infers
  
positive.code:         let mutable p = Unchecked.defaultof<_>
          pPU.U (d, r, &p)
          t <- asP.Create (&p)}
  
    type [<Bitwise; Rep>] PU () =
      inherit Rules ()
  
negative.code:       P ePU : PUP<'e, 'r, 'o, 't>
  
      static member Pair (P ePU: PUP<     'e     , Pair<'e, 'r>, 'o, 't>,
                          P rPU: PUP<         'r ,          'r , 'o, 't>) =
        P (pair ePU rPU)       : PUP<Pair<'e, 'r>, Pair<'e, 'r>, 'o, 't>
  
      static member Tuple (_: Tuple<'t>,
                           asP: AsPairs<'p, 'o, 't>,
                           P pPU: PUP<'p, 'p, 'o, 't>) = O <| asPairs asP pPU
  
      static member Record (tR: Record<'t>,
                            asP: AsPairs<'p, 'o, 't>,
  