anchor.diff:          | IPAddress -> if molder.DefaultAsRandom then new IPAddress (int64 (molder.Random.Next ())) :> obj else Guid.Empty :> obj
           | Guid -> if molder.DefaultAsRandom then Guid.NewGuid () :> obj else Guid.Empty :> obj
   
  -    let rec typeToMold pathOpt (ty : Type) molder =
  +    let rec private typeToMold3 pathOpt (ty : Type) molder =
           let key = (pathOpt, ty)
           match molder.Cache.TryGetValue key with
           | (false, _) ->
  
positive.code: 
      let instanceToMold instance molder =
          let ty = instance.GetType ()
          typeToMold None ty molder
  
      let typeToInstance (ty : Type) molder =
          let mold = typeToMold None ty molder
          let instance = moldToInstance mold molder
          instance
  
  
negative.code:                 else moldRef := Unidentified pathOpt
              moldRef.Value
          | (true, moldRef) -> moldRef.Value
  
      let typeToMold ty molder =
          typeToMold3 None ty molder
  
      let moldToPrimitive primitive (_ : Molder) =
          match primitive with
  