diff --git a/main/rtcm32json.hs b/main/rtcm32json.hs
--- a/main/rtcm32json.hs
+++ b/main/rtcm32json.hs
@@ -2,7 +2,7 @@
 -- Module:      Main
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
@@ -14,13 +14,14 @@
 import           Data.Aeson
 import           Data.Aeson.Encode
 import           Data.ByteString.Builder
-import qualified Data.ByteString.Lazy as BL
+import qualified Data.ByteString.Lazy              as BL
 import           Data.Conduit
 import           Data.Conduit.Binary
-import qualified Data.Conduit.List as CL
+import qualified Data.Conduit.List                 as CL
 import           Data.Conduit.Serialization.Binary
 import           Data.RTCM3
 import           System.IO
+
 
 -- | Encode a RTCM3Msg to a line of JSON.
 encodeLine :: RTCM3Msg -> ByteString
diff --git a/rtcm.cabal b/rtcm.cabal
--- a/rtcm.cabal
+++ b/rtcm.cabal
@@ -1,12 +1,12 @@
 name:                  rtcm
-version:               0.1.7
+version:               0.1.8
 synopsis:              RTCM Library.
 description:           Haskell bindings for RTCM.
 homepage:              http://github.com/swift-nav/librtcm
 license:               BSD3
-author:                Swift Navigation Inc.
-maintainer:            Mark Fine <dev@swiftnav.com>
-copyright:             Copyright (C) 2015 Swift Navigation, Inc.
+author:                Mark Fine <mark@swift-nav.com>, Joshua Gross <josh@swift-nav.com>
+maintainer:            Swift Navigation <engineering@swift-nav.com>
+copyright:             Copyright (C) 2015-2017 Swift Navigation, Inc.
 category:              Network
 build-type:            Simple
 cabal-version:         >= 1.10
@@ -25,6 +25,7 @@
   exposed-modules:     Data.CRC24Q
                      , Data.RTCM3
                      , Data.RTCM3.Antennas
+                     , Data.RTCM3.Ephemeris
                      , Data.RTCM3.Internal
                      , Data.RTCM3.Observations
                      , Data.RTCM3.SSR
diff --git a/src/Data/CRC24Q.hs b/src/Data/CRC24Q.hs
--- a/src/Data/CRC24Q.hs
+++ b/src/Data/CRC24Q.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.CRC24Q
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
@@ -12,7 +12,7 @@
   ( crc24q
   ) where
 
-import BasicPrelude hiding ( ByteString, foldl' )
+import BasicPrelude         hiding (ByteString, foldl')
 import Data.Array
 import Data.Bits
 import Data.ByteString.Lazy
diff --git a/src/Data/RTCM3.hs b/src/Data/RTCM3.hs
--- a/src/Data/RTCM3.hs
+++ b/src/Data/RTCM3.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3
 -- Copyright:   (c) 2015 Mark Fine
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark.fine@gmail.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
@@ -10,23 +10,20 @@
 
 module Data.RTCM3
   ( RTCM3Msg (..)
-  , module Data.RTCM3.Antennas
-  , module Data.RTCM3.Observations
-  , module Data.RTCM3.SSR
-  , module Data.RTCM3.System
-  , module Data.RTCM3.Types
+  , module Export
   ) where
 
 import BasicPrelude
 import Control.Lens
-import Data.Aeson hiding (decode, decode')
+import Data.Aeson              hiding (decode, decode')
 import Data.Binary
 import Data.ByteString.Lazy
-import Data.RTCM3.Antennas
-import Data.RTCM3.Observations
-import Data.RTCM3.SSR
-import Data.RTCM3.System
-import Data.RTCM3.Types
+import Data.RTCM3.Antennas     as Export
+import Data.RTCM3.Ephemeris    as Export
+import Data.RTCM3.Observations as Export
+import Data.RTCM3.SSR          as Export
+import Data.RTCM3.System       as Export
+import Data.RTCM3.Types        as Export
 
 -- | An RTCM message ADT composed of all defined RTCM messages.
 --
@@ -46,6 +43,7 @@
    | RTCM3Msg1011    Msg1011 Msg
    | RTCM3Msg1012    Msg1012 Msg
    | RTCM3Msg1013    Msg1013 Msg
+   | RTCM3Msg1019    Msg1019 Msg
    | RTCM3Msg1033    Msg1033 Msg
    | RTCM3Msg1057    Msg1057 Msg
    | RTCM3Msg1058    Msg1058 Msg
@@ -80,6 +78,7 @@
           | num == msg1011 = RTCM3Msg1011 (decode $ fromStrict _msgRTCM3Payload) m
           | num == msg1012 = RTCM3Msg1012 (decode $ fromStrict _msgRTCM3Payload) m
           | num == msg1013 = RTCM3Msg1013 (decode $ fromStrict _msgRTCM3Payload) m
+          | num == msg1019 = RTCM3Msg1019 (decode $ fromStrict _msgRTCM3Payload) m
           | num == msg1033 = RTCM3Msg1033 (decode $ fromStrict _msgRTCM3Payload) m
           | num == msg1057 = RTCM3Msg1057 (decode $ fromStrict _msgRTCM3Payload) m
           | num == msg1058 = RTCM3Msg1058 (decode $ fromStrict _msgRTCM3Payload) m
@@ -106,6 +105,7 @@
       encode' (RTCM3Msg1011    _n m) = put m
       encode' (RTCM3Msg1012    _n m) = put m
       encode' (RTCM3Msg1013    _n m) = put m
+      encode' (RTCM3Msg1019    _n m) = put m
       encode' (RTCM3Msg1033    _n m) = put m
       encode' (RTCM3Msg1057    _n m) = put m
       encode' (RTCM3Msg1058    _n m) = put m
@@ -130,6 +130,7 @@
   msg f (RTCM3Msg1011    n m) = RTCM3Msg1011    n <$> f m
   msg f (RTCM3Msg1012    n m) = RTCM3Msg1012    n <$> f m
   msg f (RTCM3Msg1013    n m) = RTCM3Msg1013    n <$> f m
+  msg f (RTCM3Msg1019    n m) = RTCM3Msg1019    n <$> f m
   msg f (RTCM3Msg1033    n m) = RTCM3Msg1033    n <$> f m
   msg f (RTCM3Msg1057    n m) = RTCM3Msg1057    n <$> f m
   msg f (RTCM3Msg1058    n m) = RTCM3Msg1058    n <$> f m
@@ -160,6 +161,7 @@
   toJSON (RTCM3Msg1011    n m) = toJSON n `mergeValues` toJSON m
   toJSON (RTCM3Msg1012    n m) = toJSON n `mergeValues` toJSON m
   toJSON (RTCM3Msg1013    n m) = toJSON n `mergeValues` toJSON m
+  toJSON (RTCM3Msg1019    n m) = toJSON n `mergeValues` toJSON m
   toJSON (RTCM3Msg1033    n m) = toJSON n `mergeValues` toJSON m
   toJSON (RTCM3Msg1057    n m) = toJSON n `mergeValues` toJSON m
   toJSON (RTCM3Msg1058    n m) = toJSON n `mergeValues` toJSON m
diff --git a/src/Data/RTCM3/Aeson.hs b/src/Data/RTCM3/Aeson.hs
--- a/src/Data/RTCM3/Aeson.hs
+++ b/src/Data/RTCM3/Aeson.hs
@@ -3,7 +3,7 @@
 -- Module:      Data.RTCM3.Extras
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
diff --git a/src/Data/RTCM3/Antennas.hs b/src/Data/RTCM3/Antennas.hs
--- a/src/Data/RTCM3/Antennas.hs
+++ b/src/Data/RTCM3/Antennas.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3.Antennas
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
diff --git a/src/Data/RTCM3/Ephemeris.hs b/src/Data/RTCM3/Ephemeris.hs
new file mode 100644
--- /dev/null
+++ b/src/Data/RTCM3/Ephemeris.hs
@@ -0,0 +1,204 @@
+-- |
+-- Module:      Data.RTCM3.Ephemeris
+-- Copyright:   Copyright (C) 2017 Swift Navigation, Inc.
+-- License:     LGPL-3
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
+-- Stability:   experimental
+-- Portability: portable
+--
+-- RTCMv3 Ephemeris messages
+
+module Data.RTCM3.Ephemeris where
+
+import           BasicPrelude
+import           Control.Lens
+import           Data.Aeson.TH
+import           Data.Binary
+import           Data.Binary.Bits
+import qualified Data.Binary.Bits.Get as B
+import qualified Data.Binary.Bits.Put as B
+import           Data.Int
+import           Data.RTCM3.Extras
+import           Data.RTCM3.TH
+
+-- | EphemerisHeader.
+--
+-- GPS and Glonass Ephemeris header.
+data EphemerisHeader = EphemerisHeader
+  { _ephemerisHeader_num :: Word16
+    -- ^ Message number.
+  , _ephemerisHeader_sat :: Word8
+    -- ^ GPS/Glonass satellite ID.
+  } deriving ( Show, Read, Eq )
+
+$(makeLenses ''EphemerisHeader)
+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_ephemerisHeader_" . stripPrefix "_ephemerisHeader_"} ''EphemerisHeader)
+
+instance BinaryBit EphemerisHeader where
+  getBits _n = do
+    _ephemerisHeader_num <- B.getWord16be 12
+    _ephemerisHeader_sat <- B.getWord8    6
+    return EphemerisHeader {..}
+
+  putBits _n EphemerisHeader {..} = do
+    B.putWord16be 12 _ephemerisHeader_num
+    B.putWord8    6  _ephemerisHeader_sat
+
+data GpsEphemeris = GpsEphemeris
+  { _gpsEphemeris_wn          :: Word16
+    -- ^ GPS week number, mod 1024 (0-1023).
+  , _gpsEphemeris_svAccuracy  :: Word8
+    -- ^ GPS SV accuracy
+  , _gpsEphemeris_codeOnL2    :: Word8
+    -- ^ GPS code on L2: 00 reserved, 01 P code on, 10 C/A code on, 11 L2C on.
+  , _gpsEphemeris_idot        :: Int16
+    -- ^ GPS IDOT (rate of inclination angle). Unit: semi-circles/sec. Scale factor: 2^(-43)
+  , _gpsEphemeris_iode        :: Word8
+    -- ^ GPS IODE.
+  , _gpsEphemeris_toc         :: Word16
+    -- ^ GPS t_oc. Unit: Seconds. Scale factor: 2^4
+  , _gpsEphemeris_af2         :: Int8
+    -- ^ GPS a_f2. Unit: sec/sec^2. Scale factor: 2^(-55)
+  , _gpsEphemeris_af1         :: Int16
+    -- ^ GPS a_f1. Unit: sec/sec. Scale factor: 2^(-43)
+  , _gpsEphemeris_af0         :: Int32
+    -- ^ GPS a_f0. Unit: seconds. Scale factor: 2^(-31)
+  , _gpsEphemeris_iodc        :: Word16
+    -- ^ GPS iodc.
+  , _gpsEphemeris_c_rs        :: Int16
+    -- ^ GPS C_rs. Unit: Meters. Scale factor: 2^(-5)
+  , _gpsEphemeris_dn          :: Int16
+    -- ^ GPS delta n. Unit: semi-circles/sec. Scale factor: 2^(-43)
+  , _gpsEphemeris_m0          :: Int32
+    -- ^ GPS M_0. Unit: semi-circles. Scale factor: 2^(-31)
+  , _gpsEphemeris_c_uc        :: Int16
+    -- ^ GPS C_uc. Unit: radians. Scale factor: 2^(-29)
+  , _gpsEphemeris_ecc         :: Word32
+    -- ^ GPS Eccentricity (e). Unit: Dimensionless. Scale factor: 2^(-33)
+  , _gpsEphemeris_c_us        :: Int16
+    -- ^ GPS C_us. Unit: radians. Scale factor: 2^(-29)
+  , _gpsEphemeris_sqrta       :: Word32
+    -- ^ GPS A^(1/2). Unit: meters^(1/2). Scale factor: 2^(-19)
+  , _gpsEphemeris_toe         :: Word16
+    -- ^ GPS t_oe. Unit: seconds. Scale factor: 2^4
+  , _gpsEphemeris_c_ic        :: Int16
+    -- ^ GPS C_ic. Unit: radians. Scale factor: 2^(-29)
+  , _gpsEphemeris_omega0      :: Int32
+    -- ^ GPS Omega_0. Unit: semi-circles. Scale factor: 2^(-31)
+  , _gpsEphemeris_c_is        :: Int16
+    -- ^ GPS C_is. Unit: radians. Scale factor: 2^(-29)
+  , _gpsEphemeris_i0          :: Int32
+    -- ^ GPS i_0 (inclination angle at reference time; inc). Unit: semi-circles. Scale factor: 2^(-31)
+  , _gpsEphemeris_c_rc        :: Int16
+    -- ^ GPS C_rc. Unit: meters. Scale factor: 2^(-5)
+  , _gpsEphemeris_w           :: Int32
+    -- ^ GPS Argument of Perigee (omega, w). Unit: semi-circles. Scale factor: 2^(-31)
+  , _gpsEphemeris_omegadot    :: Int32
+    -- ^ GPS Omegadot - rate or right ascension. Unit: semi-circles/sec. Scale factor: 2^(-43)
+  , _gpsEphemeris_tgd         :: Int8
+    -- ^ GPS t_GD. Unit: seconds. Scale factor: 2^(-31)
+  , _gpsEphemeris_svHealth    :: Word8
+    -- ^ GPS SV health
+  , _gpsEphemeris_l2pFlag     :: Bool
+    -- ^ GPS L2P data flag
+  , _gpsEphemeris_fitInterval :: Bool
+    -- ^ GPS fit interval
+  } deriving (Show, Read, Eq)
+
+instance BinaryBit GpsEphemeris where
+  getBits _n = do
+    _gpsEphemeris_wn          <- B.getWord16be 10
+    _gpsEphemeris_svAccuracy  <- B.getWord8    4
+    _gpsEphemeris_codeOnL2    <- B.getWord8    2
+    _gpsEphemeris_idot        <- getInt16be    14
+    _gpsEphemeris_iode        <- B.getWord8    8
+    _gpsEphemeris_toc         <- B.getWord16be 16
+    _gpsEphemeris_af2         <- getInt8       8
+    _gpsEphemeris_af1         <- getInt16be    16
+    _gpsEphemeris_af0         <- getInt32be    22
+    _gpsEphemeris_iodc        <- B.getWord16be 10
+    _gpsEphemeris_c_rs        <- getInt16be    16
+    _gpsEphemeris_dn          <- getInt16be    16
+    _gpsEphemeris_m0          <- getInt32be    32
+    _gpsEphemeris_c_uc        <- getInt16be    16
+    _gpsEphemeris_ecc         <- B.getWord32be 32
+    _gpsEphemeris_c_us        <- getInt16be    16
+    _gpsEphemeris_sqrta       <- B.getWord32be 32
+    _gpsEphemeris_toe         <- B.getWord16be 16
+    _gpsEphemeris_c_ic        <- getInt16be    16
+    _gpsEphemeris_omega0      <- getInt32be    32
+    _gpsEphemeris_c_is         <- getInt16be    16
+    _gpsEphemeris_i0          <- getInt32be    32
+    _gpsEphemeris_c_rc        <- getInt16be    16
+    _gpsEphemeris_w           <- getInt32be    32
+    _gpsEphemeris_omegadot    <- getInt32be    24
+    _gpsEphemeris_tgd         <- getInt8       8
+    _gpsEphemeris_svHealth    <- B.getWord8    6
+    _gpsEphemeris_l2pFlag     <- getBits 1
+    _gpsEphemeris_fitInterval <- getBits 1
+    return GpsEphemeris {..}
+
+  putBits _n GpsEphemeris {..} = do
+    B.putWord16be 10 _gpsEphemeris_wn
+    B.putWord8    4  _gpsEphemeris_svAccuracy
+    B.putWord8    2  _gpsEphemeris_codeOnL2
+    putInt16be    14 _gpsEphemeris_idot
+    B.putWord8    8  _gpsEphemeris_iode
+    B.putWord16be 16 _gpsEphemeris_toc
+    putInt8       8  _gpsEphemeris_af2
+    putInt16be    16 _gpsEphemeris_af1
+    putInt32be    22 _gpsEphemeris_af0
+    B.putWord16be 10 _gpsEphemeris_iodc
+    putInt16be    16 _gpsEphemeris_c_rs
+    putInt16be    16 _gpsEphemeris_dn
+    putInt32be    32 _gpsEphemeris_m0
+    putInt16be    16 _gpsEphemeris_c_uc
+    B.putWord32be 32 _gpsEphemeris_ecc
+    putInt16be    16 _gpsEphemeris_c_us
+    B.putWord32be 32 _gpsEphemeris_sqrta
+    B.putWord16be 16 _gpsEphemeris_toe
+    putInt16be    16 _gpsEphemeris_c_ic
+    putInt32be    32 _gpsEphemeris_omega0
+    putInt16be    16 _gpsEphemeris_c_is
+    putInt32be    32 _gpsEphemeris_i0
+    putInt16be    16 _gpsEphemeris_c_rc
+    putInt32be    32 _gpsEphemeris_w
+    putInt32be    24 _gpsEphemeris_omegadot
+    putInt8       8  _gpsEphemeris_tgd
+    B.putWord8    6  _gpsEphemeris_svHealth
+    B.putBool        _gpsEphemeris_l2pFlag
+    B.putBool        _gpsEphemeris_fitInterval
+
+$(makeLenses ''GpsEphemeris)
+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_gpsEphemeris_" . stripPrefix "_gpsEphemeris_"} ''GpsEphemeris)
+
+msg1019 :: Word16
+msg1019 = 1019
+
+-- | Msg 1019.
+--
+-- RTCMv3 message 1019.
+--
+-- See RTCM spec and GPS SPS Signal Specification, 2.4.3,
+-- for more information about these fields.
+data Msg1019 = Msg1019
+  { _msg1019_header    :: EphemerisHeader
+    -- ^ GPS ephemeris header.
+  , _msg1019_ephemeris :: GpsEphemeris
+    -- ^ GPS ephemeris body.
+  } deriving ( Show, Read, Eq )
+
+$(makeLenses ''Msg1019)
+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1019_" . stripPrefix "_msg1019_"} ''Msg1019)
+
+instance Binary Msg1019 where
+  get = B.runBitGet $ do
+    _msg1019_header    <- getBits 0
+    _msg1019_ephemeris <- getBits 0
+    return Msg1019 {..}
+
+  put Msg1019 {..} = B.runBitPut $ do
+    putBits 0 _msg1019_header
+    putBits 0 _msg1019_ephemeris
+
+$(deriveRTCM3 ''Msg1019)
diff --git a/src/Data/RTCM3/Extras.hs b/src/Data/RTCM3/Extras.hs
--- a/src/Data/RTCM3/Extras.hs
+++ b/src/Data/RTCM3/Extras.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3.Extras
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
diff --git a/src/Data/RTCM3/Internal.hs b/src/Data/RTCM3/Internal.hs
--- a/src/Data/RTCM3/Internal.hs
+++ b/src/Data/RTCM3/Internal.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3.Internal
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
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
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3.Observations
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
diff --git a/src/Data/RTCM3/SSR.hs b/src/Data/RTCM3/SSR.hs
--- a/src/Data/RTCM3/SSR.hs
+++ b/src/Data/RTCM3/SSR.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3.SSR
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
diff --git a/src/Data/RTCM3/System.hs b/src/Data/RTCM3/System.hs
--- a/src/Data/RTCM3/System.hs
+++ b/src/Data/RTCM3/System.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3.System
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
diff --git a/src/Data/RTCM3/TH.hs b/src/Data/RTCM3/TH.hs
--- a/src/Data/RTCM3/TH.hs
+++ b/src/Data/RTCM3/TH.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3.TH
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
@@ -10,7 +10,7 @@
 
 module Data.RTCM3.TH where
 
-import BasicPrelude hiding ( length )
+import BasicPrelude         hiding ( length )
 import Data.Binary
 import Data.ByteString
 import Data.ByteString.Lazy hiding ( length )
diff --git a/src/Data/RTCM3/Types.hs b/src/Data/RTCM3/Types.hs
--- a/src/Data/RTCM3/Types.hs
+++ b/src/Data/RTCM3/Types.hs
@@ -2,7 +2,7 @@
 -- Module:      Data.RTCM3.Types
 -- Copyright:   Copyright (C) 2015 Swift Navigation, Inc.
 -- License:     LGPL-3
--- Maintainer:  Mark Fine <dev@swiftnav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 -- Stability:   experimental
 -- Portability: portable
 --
@@ -12,14 +12,14 @@
 module Data.RTCM3.Types where
 
 import           BasicPrelude
-import           Control.Lens hiding ((.=))
+import           Control.Lens            hiding ((.=))
 import           Data.Aeson
 import           Data.Binary
-import qualified Data.Binary.Bits.Get as B
+import qualified Data.Binary.Bits.Get    as B
 import           Data.Binary.Get
 import           Data.Binary.Put
 import           Data.ByteString.Builder
-import           Data.ByteString.Lazy hiding ( ByteString )
+import           Data.ByteString.Lazy    hiding ( ByteString )
 import           Data.CRC24Q
 import           Data.RTCM3.Aeson ()
 import           Data.RTCM3.Extras
diff --git a/test/Test.hs b/test/Test.hs
--- a/test/Test.hs
+++ b/test/Test.hs
@@ -1,14 +1,15 @@
 -- |
 -- Module:      Test
--- Copyright:   (c) 2015 Mark Fine
+-- Copyright:   (c) 2015 Swift Navigation
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark@swift-nav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 --
 -- Test module for RTCM3.
 
 import           BasicPrelude
 import qualified Test.Data.CRC24Q             as CRC24Q
 import qualified Test.Data.RTCM3.Antennas     as Antennas
+import qualified Test.Data.RTCM3.Ephemeris    as Ephemeris
 import qualified Test.Data.RTCM3.Extras       as Extras
 import qualified Test.Data.RTCM3.Observations as Observations
 import qualified Test.Data.RTCM3.SSR          as SSR
@@ -20,6 +21,7 @@
   testGroup "Tests"
     [ CRC24Q.tests
     , Antennas.tests
+    , Ephemeris.tests
     , Extras.tests
     , Observations.tests
     , SSR.tests
diff --git a/test/Test/Data/CRC24Q.hs b/test/Test/Data/CRC24Q.hs
--- a/test/Test/Data/CRC24Q.hs
+++ b/test/Test/Data/CRC24Q.hs
@@ -1,8 +1,8 @@
 -- |
 -- Module:      Test.Data.CRC24Q
--- Copyright:   (c) 2015 Mark Fine
+-- Copyright:   (c) 2015 Swift Navigation
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark@swift-nav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 --
 -- Test module for CRC24Q.
 
diff --git a/test/Test/Data/RTCM3/Antennas.hs b/test/Test/Data/RTCM3/Antennas.hs
--- a/test/Test/Data/RTCM3/Antennas.hs
+++ b/test/Test/Data/RTCM3/Antennas.hs
@@ -2,9 +2,9 @@
 
 -- |
 -- Module:      Test.Data.RTCM3.Antennas
--- Copyright:   (c) 2015 Mark Fine
+-- Copyright:   (c) 2015 Swift Navigation
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark@swift-nav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 --
 -- Test Antennas module for RTCM3.
 
diff --git a/test/Test/Data/RTCM3/Extras.hs b/test/Test/Data/RTCM3/Extras.hs
--- a/test/Test/Data/RTCM3/Extras.hs
+++ b/test/Test/Data/RTCM3/Extras.hs
@@ -3,9 +3,9 @@
 
 -- |
 -- Module:      Test.Data.RTCM3.Extras
--- Copyright:   (c) 2015 Mark Fine
+-- Copyright:   (c) 2015 Swift Navigation
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark@swift-nav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 --
 -- Test Extras module for RTCM3.
 
@@ -13,10 +13,10 @@
   ( tests
   ) where
 
-import           BasicPrelude         hiding (ByteString)
+import           BasicPrelude          hiding (ByteString)
 import           Data.Binary
-import qualified Data.Binary.Bits.Get as B
-import qualified Data.Binary.Bits.Put as B
+import qualified Data.Binary.Bits.Get  as B
+import qualified Data.Binary.Bits.Put  as B
 import           Data.Binary.Get
 import           Data.Binary.Put
 import           Data.Bits
@@ -24,10 +24,10 @@
 import           Data.Int
 import           Data.RTCM3.Internal
 import           Data.Word.Word24
+import           System.Random
 import           Test.Data.RTCM3.Test
 import           Test.Tasty
 import           Test.Tasty.QuickCheck
-import           System.Random
 
 data TestInt a = TestInt Int a deriving ( Show, Read, Eq )
 
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
@@ -2,9 +2,9 @@
 
 -- |
 -- Module:      Test.Data.RTCM3.Observations
--- Copyright:   (c) 2015 Mark Fine
+-- Copyright:   (c) 2015 Swift Navigation
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark@swift-nav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 --
 -- Test Observations module for RTCM3.
 
diff --git a/test/Test/Data/RTCM3/SSR.hs b/test/Test/Data/RTCM3/SSR.hs
--- a/test/Test/Data/RTCM3/SSR.hs
+++ b/test/Test/Data/RTCM3/SSR.hs
@@ -2,9 +2,9 @@
 
 -- |
 -- Module:      Test.Data.RTCM3.SSR
--- Copyright:   (c) 2015 Mark Fine
+-- Copyright:   (c) 2015 Swift Navigation
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark@swift-nav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 --
 -- Test SSR module for RTCM3.
 
diff --git a/test/Test/Data/RTCM3/System.hs b/test/Test/Data/RTCM3/System.hs
--- a/test/Test/Data/RTCM3/System.hs
+++ b/test/Test/Data/RTCM3/System.hs
@@ -2,9 +2,9 @@
 
 -- |
 -- Module:      Test.Data.RTCM3.System
--- Copyright:   (c) 2015 Mark Fine
+-- Copyright:   (c) 2015 Swift Navigation
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark@swift-nav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 --
 -- Test System module for RTCM3.
 
diff --git a/test/Test/Data/RTCM3/Test.hs b/test/Test/Data/RTCM3/Test.hs
--- a/test/Test/Data/RTCM3/Test.hs
+++ b/test/Test/Data/RTCM3/Test.hs
@@ -1,8 +1,8 @@
 -- |
 -- Module:      Test.Data.RTCM3.Test
--- Copyright:   (c) 2015 Mark Fine
+-- Copyright:   (c) 2015 Swift Navigation
 -- License:     BSD3
--- Maintainer:  Mark Fine <mark@swift-nav.com>
+-- Maintainer:  Swift Navigation <dev@swiftnav.com>
 --
 -- Test module for RTCM3.
 
@@ -10,8 +10,8 @@
 
 import BasicPrelude
 import Data.Bits
-import Test.Tasty.QuickCheck
 import System.Random
+import Test.Tasty.QuickCheck
 
 arbitraryWord :: (Integral a, Bits a, Random a) => Int -> Gen a
 arbitraryWord b = do
