anchor.diff:      type [<CustomEquality; CustomComparison; TypeConverter (typeof<AddressConverter>)>] 'a Address =
           private
               { Names : Name list
  -              AddressStr : string
                 HashCode : int // OPTIMIZATION: hash cached for speed
                 TypeCarrier : 'a -> unit }
       
  
positive.code:             Address<'a>.hash this
          
          override this.ToString () =
              this.AddressStr
  
      [<RequireQualifiedAccess>]
      module Address =
  
          /// The empty address.
          let empty<'a> =
              { Names = []; AddressStr = String.Empty; HashCode = String.Empty.GetHashCode (); TypeCarrier = fun (_ : 'a) -> () }
  
          /// Make an address from a list of names.
          let makeFromList<'a> names : 'a Address =
  
negative.code: 
          /// Convert a names list into an address.
          static member ltoa<'a> (names : Name list) =
              { Names = names; HashCode = Name.hashNames names; TypeCarrier = fun (_ : 'a) -> () }
  
          /// Convert a single name into an address.
          static member ntoa<'a> name : 'a Address =
  