convertRecord ::
  (Vec.Storage v d2, Vec.Storage t d2, Vec.Storage v d1,
   Vec.Storage t d1, Vec.Convert t v) =>
  Record.Record s1 s2 t1 t2 id t d1 d2 ->
  Record.Record s1 s2 t1 t2 id v d1 d2
convertRecord (Record.Record time sigMap) =
  Record.Record (Sig.convert time) (Map.map Sig.convert sigMap)
convertRecord ::
  (Vec.Storage v d2, Vec.Storage t d2, Vec.Storage v d1,
   Vec.Storage t d1, Vec.Convert t v) =>
  Record.Record s1 s2 t1 t2 id t d1 d2 ->
  Record.Record s1 s2 t1 t2 id v d1 d2
convertRecord (Record.Record time sigMap) =
  Record.Record (Sig.convert time) (Map.map Sig.convert sigMap)
convertRecord (Record.Record time sigMap) =
  Record.Record (Sig.convert time) (Map.map Sig.convert sigMap)