decodeTimestampTz :: L.ByteString -> Either String (Maybe (Day, TimeOfDay, Tz))
decodeTimestampTz = runDecoder (decodeWithVersion decoder)
  where
    decoder v
      | v == v0 = Just timestampTzDecoderV0
      | otherwise = Nothing
decodeTimestampTz :: L.ByteString -> Either String (Maybe (Day, TimeOfDay, Tz))
decodeTimestampTz = runDecoder (decodeWithVersion decoder)
  where
    decoder v
      | v == v0 = Just timestampTzDecoderV0
      | otherwise = Nothing
decodeTimestampTz = runDecoder (decodeWithVersion decoder)
  where
    decoder v
      | v == v0 = Just timestampTzDecoderV0
      | otherwise = Nothing