@@ -0,0 +1,25 @@
1+diff -ru orig/src/Data/Bytes/Serial.hs new/src/Data/Bytes/Serial.hs
2+--- orig/src/Data/Bytes/Serial.hs 2014-02-22 21:21:31.076773095 +0200
3++++ new/src/Data/Bytes/Serial.hs 2014-02-22 21:21:29.000000000 +0200
4+@@ -58,7 +58,9 @@
5+ import Data.Int
6+ import Data.Bits
7+ import Data.Monoid as Monoid
8++#if MIN_VERSION_base(4, 6, 0)
9+ import Data.Ord (Down(..))
10++#endif
11+ import Data.Functor.Identity as Functor
12+ import Data.Functor.Constant as Functor
13+ import Data.Functor.Product as Functor
14+@@ -475,9 +477,11 @@
15+ serialize = serialize . (fromIntegral::Int -> Int8) . fromEnum
16+ deserialize = (toEnum . (fromIntegral::Int8 -> Int)) `liftM` deserialize
17+
18++#if MIN_VERSION_base(4, 6, 0)
19+ instance Serial a => Serial (Down a) where
20+ serialize (Down a) = serialize a
21+ deserialize = Down `liftM` deserialize
22++#endif
23+
24+ instance Serial Version where
25+ serialize (Version vb ts) = serialize (fmap VarInt vb, ts)