sig
  type 'a t
  val align_with :
    (('a, 'b) These.t -> 'c) ->
    'a Align.Basic.t -> 'b Align.Basic.t -> 'c Align.Basic.t
end