diff --git a/rtcm.cabal b/rtcm.cabal
--- a/rtcm.cabal
+++ b/rtcm.cabal
@@ -1,5 +1,5 @@
 name: rtcm
-version: 0.2.8
+version: 0.2.10
 cabal-version: >=1.22
 build-type: Simple
 license: BSD3
@@ -60,7 +60,6 @@
         binary-conduit >=1.2.4.1,
         bytestring >=0.10.6.0,
         conduit >=1.2.10,
-        conduit-combinators >=1.0.8.3,
         conduit-extra >=1.1.16,
         rtcm
     default-language: Haskell2010
diff --git a/src/Data/RTCM3/Observations.hs b/src/Data/RTCM3/Observations.hs
--- a/src/Data/RTCM3/Observations.hs
+++ b/src/Data/RTCM3/Observations.hs
@@ -340,13 +340,13 @@
     -- ^ GLONASS Code-Phase bias indicator.
   , _glonassBias_mask    :: Word8
     -- ^ GLONASS FDMA signals mask.
-  , _glonassBias_l1ca    :: Word16
+  , _glonassBias_l1ca    :: Int16
     -- ^ GLONASS L1 C/A code-phase bias.
-  , _glonassBias_l1p     :: Word16
+  , _glonassBias_l1p     :: Int16
     -- ^ GLONASS L1 P code-phase bias.
-  , _glonassBias_l2ca    :: Word16
+  , _glonassBias_l2ca    :: Int16
     -- ^ GLONASS L2 C/A code-phase bias.
-  , _glonassBias_l2p     :: Word16
+  , _glonassBias_l2p     :: Int16
     -- ^ GLONASS L2 P code-phase bias.
   } deriving ( Show, Read, Eq )
 
@@ -359,10 +359,10 @@
     _glonassBias_station <- B.getWord16be 12
     _glonassBias_bias    <- B.getBool
     _glonassBias_mask    <- B.getWord8 4
-    _glonassBias_l1ca    <- B.getWord16be 16
-    _glonassBias_l1p     <- B.getWord16be 16
-    _glonassBias_l2ca    <- B.getWord16be 16
-    _glonassBias_l2p     <- B.getWord16be 16
+    _glonassBias_l1ca    <- getInt16be 16
+    _glonassBias_l1p     <- getInt16be 16
+    _glonassBias_l2ca    <- getInt16be 16
+    _glonassBias_l2p     <- getInt16be 16
     pure GlonassBias {..}
 
   putBits _n GlonassBias {..} = do
@@ -370,10 +370,10 @@
     B.putWord16be 12 _glonassBias_station
     B.putBool        _glonassBias_bias
     B.putWord8 4     _glonassBias_mask
-    B.putWord16be 16 _glonassBias_l1ca
-    B.putWord16be 16 _glonassBias_l1p
-    B.putWord16be 16 _glonassBias_l2ca
-    B.putWord16be 16 _glonassBias_l2p
+    putInt16be 16 _glonassBias_l1ca
+    putInt16be 16 _glonassBias_l1p
+    putInt16be 16 _glonassBias_l2ca
+    putInt16be 16 _glonassBias_l2p
 
 msg1001 :: Word16
 msg1001 = 1001
diff --git a/test/Test/Data/RTCM3/Observations.hs b/test/Test/Data/RTCM3/Observations.hs
--- a/test/Test/Data/RTCM3/Observations.hs
+++ b/test/Test/Data/RTCM3/Observations.hs
@@ -105,10 +105,10 @@
     _glonassBias_station <- arbitraryWord 12
     _glonassBias_bias    <- arbitrary
     _glonassBias_mask    <- arbitraryWord 4
-    _glonassBias_l1ca    <- arbitraryWord 16
-    _glonassBias_l1p     <- arbitraryWord 16
-    _glonassBias_l2ca    <- arbitraryWord 16
-    _glonassBias_l2p     <- arbitraryWord 16
+    _glonassBias_l1ca    <- arbitraryInt 16
+    _glonassBias_l1p     <- arbitraryInt 16
+    _glonassBias_l2ca    <- arbitraryInt 16
+    _glonassBias_l2p     <- arbitraryInt 16
     pure GlonassBias {..}
 
 instance Arbitrary Observation1001 where
