From c38386dd99d2b4d29e15fe9ea278cd756d8c9117 Mon Sep 17 00:00:00 2001
From: paarongiroux <47163875+paarongiroux@users.noreply.github.com>
Date: Mon, 30 Sep 2019 15:51:26 -0700
Subject: [PATCH] Added ISIS label Naif spice driver for Viking (#286)

* added viking isislabel datanaif driver, tests and test data

* cleaned up tests

* cleaned up tests part II: Electric Boogaloo

* added logic for vo2

* fixed logic

* added load tests and data for vo2 cam a & b, vo1 cam a

* cleaned up driver and tests, added another ephemeris_start_time test to hit else branch
---
 ale/drivers/viking_drivers.py                 |   82 +
 tests/pytests/data/f004a47/f004a47_0.xsp      |  634 +++
 tests/pytests/data/f004a47/f004a47_isis3.lbl  |  105 +
 tests/pytests/data/f004a47/f004a47_pds3.lbl   | 1633 ++++++++
 tests/pytests/data/f004a47/naif0012.tls       |  152 +
 tests/pytests/data/f004a47/pck00009.tpc       | 3639 +++++++++++++++++
 .../pytests/data/f004a47/vikingAddendum003.ti |   23 +
 tests/pytests/data/f004a47/vo1_fict.tsc       |  136 +
 tests/pytests/data/f004a47/vo1_fsc.tsc        |  237 ++
 .../f004a47/vo1_sedr_ck2_0_sliced_-27000.xc   |  851 ++++
 tests/pytests/data/f004a47/vo1_v10.tf         |  470 +++
 tests/pytests/data/f004b65/f004b65_0.xsp      |  706 ++++
 tests/pytests/data/f004b65/f004b65_isis3.lbl  |  103 +
 tests/pytests/data/f004b65/f004b65_pds3.lbl   | 1633 ++++++++
 tests/pytests/data/f004b65/naif0012.tls       |  152 +
 tests/pytests/data/f004b65/pck00009.tpc       | 3639 +++++++++++++++++
 .../pytests/data/f004b65/vikingAddendum003.ti |   23 +
 tests/pytests/data/f004b65/vo2_fict.tsc       |  134 +
 tests/pytests/data/f004b65/vo2_fsc.tsc        |  193 +
 .../f004b65/vo2_sedr_ck2_0_sliced_-30000.xc   |  981 +++++
 tests/pytests/data/f004b65/vo2_v10.tf         |  470 +++
 tests/pytests/data/f704b28/f704b28_0.xsp      |  418 ++
 tests/pytests/data/f704b28/f704b28_isis3.lbl  |  103 +
 tests/pytests/data/f704b28/f704b28_pds3.lbl   | 1632 ++++++++
 tests/pytests/data/f704b28/naif0012.tls       |  152 +
 tests/pytests/data/f704b28/pck00009.tpc       | 3639 +++++++++++++++++
 .../pytests/data/f704b28/vikingAddendum003.ti |   23 +
 tests/pytests/data/f704b28/vo2_fict.tsc       |  134 +
 tests/pytests/data/f704b28/vo2_fsc.tsc        |  193 +
 .../f704b28/vo2_sedr_ck2_0_sliced_-30000.xc   |  691 ++++
 tests/pytests/data/f704b28/vo2_v10.tf         |  470 +++
 tests/pytests/data/f735a00/f735a00_0.xsp      |  634 +++
 tests/pytests/data/f735a00/f735a00_isis3.lbl  |  103 +
 tests/pytests/data/f735a00/f735a00_pds3.lbl   | 1632 ++++++++
 tests/pytests/data/f735a00/naif0012.tls       |  152 +
 tests/pytests/data/f735a00/pck00009.tpc       | 3639 +++++++++++++++++
 .../pytests/data/f735a00/vikingAddendum003.ti |   23 +
 tests/pytests/data/f735a00/vo1_fict.tsc       |  136 +
 tests/pytests/data/f735a00/vo1_fsc.tsc        |  237 ++
 .../f735a00/vo1_sedr_ck2_0_sliced_-27000.xc   |  101 +
 tests/pytests/data/f735a00/vo1_v10.tf         |  470 +++
 tests/pytests/test_viking_drivers.py          |  302 ++
 42 files changed, 30880 insertions(+)
 create mode 100644 ale/drivers/viking_drivers.py
 create mode 100644 tests/pytests/data/f004a47/f004a47_0.xsp
 create mode 100644 tests/pytests/data/f004a47/f004a47_isis3.lbl
 create mode 100644 tests/pytests/data/f004a47/f004a47_pds3.lbl
 create mode 100644 tests/pytests/data/f004a47/naif0012.tls
 create mode 100644 tests/pytests/data/f004a47/pck00009.tpc
 create mode 100644 tests/pytests/data/f004a47/vikingAddendum003.ti
 create mode 100644 tests/pytests/data/f004a47/vo1_fict.tsc
 create mode 100644 tests/pytests/data/f004a47/vo1_fsc.tsc
 create mode 100644 tests/pytests/data/f004a47/vo1_sedr_ck2_0_sliced_-27000.xc
 create mode 100644 tests/pytests/data/f004a47/vo1_v10.tf
 create mode 100644 tests/pytests/data/f004b65/f004b65_0.xsp
 create mode 100644 tests/pytests/data/f004b65/f004b65_isis3.lbl
 create mode 100644 tests/pytests/data/f004b65/f004b65_pds3.lbl
 create mode 100644 tests/pytests/data/f004b65/naif0012.tls
 create mode 100644 tests/pytests/data/f004b65/pck00009.tpc
 create mode 100644 tests/pytests/data/f004b65/vikingAddendum003.ti
 create mode 100644 tests/pytests/data/f004b65/vo2_fict.tsc
 create mode 100644 tests/pytests/data/f004b65/vo2_fsc.tsc
 create mode 100644 tests/pytests/data/f004b65/vo2_sedr_ck2_0_sliced_-30000.xc
 create mode 100644 tests/pytests/data/f004b65/vo2_v10.tf
 create mode 100644 tests/pytests/data/f704b28/f704b28_0.xsp
 create mode 100644 tests/pytests/data/f704b28/f704b28_isis3.lbl
 create mode 100644 tests/pytests/data/f704b28/f704b28_pds3.lbl
 create mode 100644 tests/pytests/data/f704b28/naif0012.tls
 create mode 100644 tests/pytests/data/f704b28/pck00009.tpc
 create mode 100644 tests/pytests/data/f704b28/vikingAddendum003.ti
 create mode 100644 tests/pytests/data/f704b28/vo2_fict.tsc
 create mode 100644 tests/pytests/data/f704b28/vo2_fsc.tsc
 create mode 100644 tests/pytests/data/f704b28/vo2_sedr_ck2_0_sliced_-30000.xc
 create mode 100644 tests/pytests/data/f704b28/vo2_v10.tf
 create mode 100644 tests/pytests/data/f735a00/f735a00_0.xsp
 create mode 100644 tests/pytests/data/f735a00/f735a00_isis3.lbl
 create mode 100644 tests/pytests/data/f735a00/f735a00_pds3.lbl
 create mode 100644 tests/pytests/data/f735a00/naif0012.tls
 create mode 100644 tests/pytests/data/f735a00/pck00009.tpc
 create mode 100644 tests/pytests/data/f735a00/vikingAddendum003.ti
 create mode 100644 tests/pytests/data/f735a00/vo1_fict.tsc
 create mode 100644 tests/pytests/data/f735a00/vo1_fsc.tsc
 create mode 100644 tests/pytests/data/f735a00/vo1_sedr_ck2_0_sliced_-27000.xc
 create mode 100644 tests/pytests/data/f735a00/vo1_v10.tf
 create mode 100644 tests/pytests/test_viking_drivers.py

diff --git a/ale/drivers/viking_drivers.py b/ale/drivers/viking_drivers.py
new file mode 100644
index 0000000..74c2eb4
--- /dev/null
+++ b/ale/drivers/viking_drivers.py
@@ -0,0 +1,82 @@
+import spiceypy as spice
+
+import ale
+from ale.base.data_naif import NaifSpice
+from ale.base.label_isis import IsisLabel
+from ale.base.type_sensor import Framer
+from ale.base.base import Driver
+
+class VikingIsisLabelNaifSpiceDriver(Framer, IsisLabel, NaifSpice, Driver):
+
+    @property
+    def spacecraft_name(self):
+        """
+        Overridden to work with spice calls.
+
+        Returns
+        -------
+        : str
+          Name of the spacecraft.
+        """
+        name_lookup = {
+            'VIKING_ORBITER_1': 'VIKING ORBITER 1',
+            'VIKING_ORBITER_2': 'VIKING ORBITER 2'
+        }
+
+        return name_lookup[super().spacecraft_name]
+
+    @property
+    def alt_ikid(self):
+        """
+        Viking Orbiter 1 & 2 each have an alternate naif id code as defined in the
+        SCLK kernels.
+        Expects spacecraft name to be defined.
+        Returns -27999 for vo1 and -30999 for vo2
+
+        Returns
+        -------
+        : integer
+        Alternate Naif Integer ID code for the instrument
+        """
+
+        alt_id_lookup = {
+            'VIKING ORBITER 1': -27999,
+            'VIKING ORBITER 2':-30999
+        }
+
+        return alt_id_lookup[self.spacecraft_name]
+
+    @property
+    def ikid(self):
+        """
+        Overridden to grab the ikid from the Isis Cube since there is no way to
+        obtain this value with a spice bods2c call.
+
+        Returns
+        -------
+        : integer
+          Naif Integer ID code for the instrument
+        """
+        return self.label['IsisCube']['Kernels']['NaifFrameCode']
+
+    @property
+    def ephemeris_start_time(self):
+        """
+        Overridden to use the alternate instrument ID. Also computes an offset to match
+        what is being done in ISIS code.
+        Expects spacecraft_clock_start_count to be defined.
+
+        Returns
+        -------
+        : float
+          ephemeris start time of the image
+        """
+        ephemeris_start_time = spice.scs2e(self.alt_ikid, str(self.spacecraft_clock_start_count))
+
+        if self.exposure_duration <= .420:
+            offset1 = 7.0 / 8.0 * 4.48
+        else:
+            offset1 = 3.0 / 8.0 * 4.48
+        offset2 = 1.0 / 64.0 * 4.48
+
+        return ephemeris_start_time + offset1 + offset2
diff --git a/tests/pytests/data/f004a47/f004a47_0.xsp b/tests/pytests/data/f004a47/f004a47_0.xsp
new file mode 100644
index 0000000..882f7c9
--- /dev/null
+++ b/tests/pytests/data/f004a47/f004a47_0.xsp
@@ -0,0 +1,634 @@
+DAFETF NAIF DAF ENCODED TRANSFER FILE
+'DAF/SPK '
+'2'
+'6'
+'SPKMERGE                                                    '
+BEGIN_ARRAY 1 433
+'21jun76                                 '
+'-2C3F00B654EA7E^8'
+'-2C3EF5A98E0114^8'
+'-1B'
+'4'
+'E'
+'1'
+433
+'-2C3EFCFDC592F2^8'
+'3C4F1710BE^2'
+'789E2E217C^2'
+'B4ED45323A^2'
+'F13C5C42F8^2'
+'169DA8A6474^3'
+'1E278B885F^3'
+'25B16E6A76C^3'
+'2D3B514C8E8^3'
+'34C5342EA64^3'
+'3C4F1710BE^3'
+'43D8F9F2D5C^3'
+'4B62DCD4ED8^3'
+'52ECBFB7054^3'
+'5A76A2991D^3'
+'6200857B34C^3'
+'10BCBCA30B7538^4'
+'-10612403420B55^1'
+'E054861665CEC^3'
+'50C13524B04074^0'
+'-46074BEBB6F31^3'
+'36EF5DBE27BB6E^1'
+'-40F7BDAC3C588C^-2'
+'-1ABD0283F9423A^-3'
+'EFF26725BB32D^-5'
+'46BC635DCBE94^-5'
+'797354674D02A4^-6'
+'37EDC4C6B38BD8^-7'
+'-3528B6308C421^-7'
+'-15C30F0B44A0A^-7'
+'-53B4796810ED0C^-8'
+'-7D3A9124982EF^-9'
+'541C23FB70C62^-9'
+'4276F0670E84C8^-9'
+'1E2817A9A2AA9A^-9'
+'A0BE300F5CBA3^-A'
+'288F14^-A'
+'-3672CF014F4104^-2'
+'-26DC7C535ABE02^-3'
+'-8870B7404DCD18^-5'
+'305157AB11B2CA^-5'
+'88FDC5D6243C58^-6'
+'DF86CB664CE588^-7'
+'-E3F297D4540798^-8'
+'-11063E453B790E^-7'
+'-61D7509490CD8^-8'
+'-15F15A2E85A64^-8'
+'-E138E630F9A4C^-A'
+'2559ACE74466D4^-9'
+'19EF989CF599C1^-9'
+'BE13A4E22885F^-A'
+'49368A^-A'
+'10FEDF6BE84E2A^-2'
+'-259007C56F14E6^-3'
+'-3D3BD89760CBC6^-4'
+'-309B3AD09B544E^-5'
+'3F4E5E8DCD415E^-6'
+'1D1945D151F052^-6'
+'60B96E0A4181C8^-7'
+'92F9167343B8E^-8'
+'-3400B02A9D49BA^-8'
+'-2702D10D70B706^-8'
+'-F530033295FD2^-9'
+'-40A7BB53D0816^-9'
+'-6491FC0A6BC3A^-A'
+'50C6FE4C5EAAA4^-A'
+'3C97CB^-A'
+'F^1'
+'E^1'
+'E^1'
+'E^1'
+'-2C3EF9EDC16718^8'
+'3C4F1710BE^2'
+'789E2E217C^2'
+'B4ED45323A^2'
+'F13C5C42F8^2'
+'12D8B7353B6^3'
+'169DA8A6474^3'
+'1A629A17532^3'
+'1E278B885F^3'
+'21EC7CF96AE^3'
+'25B16E6A76C^3'
+'29765FDB82A^3'
+'2D3B514C8E8^3'
+'310042BD9A6^3'
+'34C5342EA64^3'
+'388A259FB22^3'
+'C5144B209E4B2^3'
+'-1E06A2D0A58123^1'
+'DCDD70D07B70F8^3'
+'-82597418BF2D5^0'
+'62FD91F2748924^3'
+'35BD7FB87362DE^1'
+'-47234A9E466AF^-2'
+'125407A7874D5^-3'
+'567D2CB6F0FBD^-4'
+'2C058509857048^-5'
+'-12AE60854C871F^-5'
+'-351007047DD8EA^-6'
+'2AB9E64E51F1BC^-7'
+'2F1425DEF90AE6^-7'
+'6E9216055EBC64^-8'
+'-200D1F7CCA12CC^-8'
+'-113B2A7A8CF452^-8'
+'1B6F062E2AF868^-9'
+'600D61EFDE6AF^-9'
+'3B47C34^-9'
+'962CB4^-A'
+'-4FAB685A7AF068^-2'
+'-D56DA5634B439^-4'
+'499579E51226AC^-4'
+'6A2A441124FCAC^-5'
+'-99BFA211B8EF4^-6'
+'-3CAF26AE745C6C^-6'
+'-39BBC9265746BA^-7'
+'2298EED9B3E142^-7'
+'A3A46726B64728^-8'
+'-52805C1909685^-9'
+'-F54F42416E8C7^-9'
+'-F3B8835A6F5BE^-A'
+'4FE1B5078518E^-9'
+'43D3E8^-9'
+'1947FA8^-9'
+'-23C858CFA88D9^-2'
+'-52B7FBBDBFB268^-3'
+'-13BB8E530402A8^-4'
+'B136386286A3E^-5'
+'157906DB948AE6^-5'
+'-1E2109305C8A9E^-6'
+'-10A658C20ABFBC^-6'
+'-191707A5B14788^-7'
+'A7BC4BFCB42D78^-8'
+'3EAC337D15715A^-8'
+'-52116B888272E^-9'
+'-BD1C78F1FD456^-9'
+'-320F61ADCE9454^-9'
+'7C15333^-9'
+'0^0'
+'F^1'
+'E^1'
+'E^1'
+'D^1'
+'-2C3EF865BF512C^8'
+'1E278B885F^2'
+'3C4F1710BE^2'
+'5A76A2991D^2'
+'789E2E217C^2'
+'96C5B9A9DB^2'
+'B4ED45323A^2'
+'D314D0BA99^2'
+'10F63E7CB57^3'
+'14BB2FEDC15^3'
+'1880215ECD3^3'
+'1C4512CFD91^3'
+'200A0440E4F^3'
+'23CEF5B1F0D^3'
+'2793E722FCB^3'
+'2B58D894089^3'
+'922F514785A67^3'
+'-2432E80431E1CE^1'
+'CA876D6ACEC5B^3'
+'-FC24DF0E6F7188^0'
+'B1D86F6B6B2748^3'
+'30BCF7EC833B16^1'
+'-37A859921E272^-2'
+'1A1BDCA3793F03^-3'
+'FE0A30198431A8^-5'
+'-105ED846129227^-5'
+'-1453450E861016^-6'
+'1A6E613042E128^-7'
+'3D93A7F45ACCA6^-8'
+'-46E3955D87D1E8^-9'
+'-1791C9740F336A^-9'
+'8621642A0ECC4^-B'
+'AE5069F785D9F8^-B'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'-4CFA6C89F48304^-2'
+'B95D4FAFD7BDD8^-4'
+'15802DD75B14AB^-4'
+'-67C6DCD9F408D8^-6'
+'-19B1CE8EEA474^-6'
+'73CFBC44F52D2^-8'
+'45B75F7571E0F8^-8'
+'DD7E31E7F6EC^-B'
+'-15EC1499022B23^-9'
+'-EA6FAB36C5A24^-B'
+'64A5F47394E1A8^-B'
+'-ADAFF6DA475838^-B'
+'-2B3E7A2B5ACC4^-B'
+'0^0'
+'0^0'
+'-43BE37600DCC84^-2'
+'-22C162691DB4C8^-3'
+'122CF5D5F5CBAD^-4'
+'18017DD14E37E6^-5'
+'-126ED759A7F827^-6'
+'-2FCA89C2788BDC^-7'
+'23559ED6EFCE14^-8'
+'BB57DDEA2BE178^-9'
+'-451FA8B4A781A4^-A'
+'-5A4DDA2F992898^-A'
+'5878A0BE548F8^-B'
+'6D075B7EB6E8AC^-B'
+'-3ABE330C6DB6DC^-B'
+'0^0'
+'0^0'
+'D^1'
+'A^1'
+'C^1'
+'C^1'
+'-2C3EF7565B696^8'
+'1E278B885F^2'
+'3C4F1710BE^2'
+'5A76A2991D^2'
+'789E2E217C^2'
+'96C5B9A9DB^2'
+'B4ED45323A^2'
+'D314D0BA99^2'
+'F13C5C42F8^2'
+'10F63E7CB57^3'
+'12D8B7353B6^3'
+'14BB2FEDC15^3'
+'169DA8A6474^3'
+'1A629A17532^3'
+'25B16E6A76C^3'
+'2B58D894089^3'
+'6A0AB270E091B8^3'
+'-275961857DBFB8^1'
+'B737D39DF4C228^3'
+'-1490348FD7306C^1'
+'E2EE042DEA2A8^3'
+'2BB0E234087F4^1'
+'-26F3D6A3D1067C^-2'
+'1F996FFF98C673^-3'
+'47D8261194C35^-5'
+'-158950FC2EFCDF^-5'
+'9CF04A20FDA74^-8'
+'274D5C7C588DB2^-7'
+'-CA4B71BBD350E^-9'
+'-8AA99B89D9836^-9'
+'6D92227E53121^-A'
+'328B7C^-A'
+'-94AF4^-B'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'-431DF32A6636E8^-2'
+'15A3195A00FB01^-3'
+'E1957A8F22845^-5'
+'-113B59E2251596^-5'
+'-BA2C37031ACE08^-7'
+'22AB6FE1F87B9E^-7'
+'15350C6A97560E^-8'
+'-82FC5693DAB5D8^-9'
+'-3F582F2A3A7478^-A'
+'367F6B8D562174^-A'
+'-13CAC^-B'
+'-513C8^-B'
+'0^0'
+'0^0'
+'0^0'
+'-5351921B2D4934^-2'
+'-1557E1D5E69CED^-3'
+'1AF902AD8450EE^-4'
+'7CD7915D09EA68^-6'
+'-215902974DD238^-6'
+'-56391D3991B7F^-8'
+'59BED1DAA51FE^-8'
+'-4434D0B1A5D24^-A'
+'-1A725458C008DF^-9'
+'1033635F3880A2^-A'
+'E916C^-B'
+'-1C5A85B597C33^-B'
+'0^0'
+'0^0'
+'0^0'
+'C^1'
+'A^1'
+'B^1'
+'B^1'
+'-2C3EF6651F0D1C^8'
+'1E278B885F^2'
+'3C4F1710BE^2'
+'5A76A2991D^2'
+'789E2E217C^2'
+'96C5B9A9DB^2'
+'B4ED45323A^2'
+'D314D0BA99^2'
+'F13C5C42F8^2'
+'10F63E7CB57^3'
+'12D8B7353B6^3'
+'14BB2FEDC15^3'
+'169DA8A6474^3'
+'1880215ECD3^3'
+'1C4512CFD91^3'
+'2B58D894089^3'
+'440745619AFCCC^3'
+'-292CC479E4F246^1'
+'A21631CED802A8^3'
+'-182A4EB12E1C36^1'
+'109B5C4A644329^4'
+'268CB84464E66^1'
+'-171F5272B97E65^-2'
+'1F02A38124C66F^-3'
+'-530C5DB7BCE188^-5'
+'-10A2729775AA7F^-5'
+'F5D22E410A0C5^-7'
+'132A3C3DCACBB8^-7'
+'-352186A5E64836^-8'
+'-1AAF1A1AAFFA5F^-9'
+'105F2A77E53121^-9'
+'-4AC9A^-B'
+'-133869^-A'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'-36DA3C9CDAFBFE^-2'
+'1A19985BAC8DDF^-3'
+'4DF8EB1BC02CF4^-5'
+'-122FAC6F323785^-5'
+'5103C4617C3D24^-7'
+'1C8090A27FBF1B^-7'
+'-2189528705DD9^-8'
+'-4A0C0DEAF624D^-9'
+'D35A034076972^-A'
+'1227F98D562174^-A'
+'-80D2A^-B'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'-5A21CF78F54^-2'
+'-7B37F1D2B74D1^-4'
+'1A702F376F93C^-4'
+'-74A5710DB39908^-6'
+'-194BF4ECFE4F21^-6'
+'1D18F9745BA88C^-7'
+'2BEA5AEE0A59A2^-8'
+'-871E36FADB82B8^-9'
+'-681FCA923C88F^-A'
+'223A175F3880A2^-A'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'B^1'
+'A^1'
+'A^1'
+'9^1'
+'-2C3EF573E2B0DA^8'
+'1E278B885F^2'
+'3C4F1710BE^2'
+'5A76A2991D^2'
+'789E2E217C^2'
+'96C5B9A9DB^2'
+'B4ED45323A^2'
+'D314D0BA99^2'
+'F13C5C42F8^2'
+'10F63E7CB57^3'
+'12D8B7353B6^3'
+'14BB2FEDC15^3'
+'169DA8A6474^3'
+'1880215ECD3^3'
+'1C4512CFD91^3'
+'2B58D894089^3'
+'1CB98B7154B11E^3'
+'-2A1A1CF6B7EABA^1'
+'89EA5E389CB44^3'
+'-1B01676089FF8A^1'
+'12B84909568D2B^4'
+'21333496359294^1'
+'-8BF7ED1B808758^-3'
+'1A95285858D17F^-3'
+'-B0C92A9B51A5F8^-5'
+'-7C571B812065C8^-6'
+'11D93455C653BA^-6'
+'-4AB92F71DA8914^-8'
+'-2561F1B3FA96DE^-8'
+'3D62097C798EA8^-9'
+'4C21E77E53121^-A'
+'-206E318^-A'
+'-180C38^-B'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'-299B6513D6F494^-2'
+'1A3DB13615D5A4^-3'
+'-2DFF4906E7A926^-5'
+'-CD59769B91EC18^-6'
+'D89E50FEAF57A^-7'
+'7B3C8E378BD058^-8'
+'-28B361F92FE30A^-8'
+'18D3395346F1FB^-9'
+'8606B7AB27A2A^-A'
+'-23493C72A9DE8C^-A'
+'-29F23^-A'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'-5A94BD7C3BCDA4^-2'
+'3EADB304A1A3DC^-4'
+'143505A64AFAF^-4'
+'-F3C5B19099578^-6'
+'-87269BDD8F69D8^-7'
+'20F7A5C21130F8^-7'
+'-101B43FFF3EAFE^-8'
+'-58BEB703F9C738^-9'
+'ADEAD16DC3771^-A'
+'-9B2^-B'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'B^1'
+'A^1'
+'A^1'
+'9^1'
+'-2C3EFCFDC592B8^8'
+'-2C3EF9EDC16724^8'
+'-2C3EF865BF5104^8'
+'-2C3EF7565B6998^8'
+'-2C3EF6651F0CDC^8'
+'-2C3EF573E2B0C8^8'
+'6^1'
+END_ARRAY 1 433
+BEGIN_ARRAY 2 39
+'DE-0721LE-0721                          '
+'-2C3F00B654EA7E^8'
+'-2C3EF5A98E0114^8'
+'A'
+'0'
+'1'
+'2'
+39
+'-2C4000C^8'
+'A8C^5'
+'-1F1632EAEF0B0C^5'
+'1CAC66E0361442^4'
+'12E299CD229D33^2'
+'-1245FEA9544747^0'
+'-C2BEA9DBA705^-2'
+'-39130FD98B622A^-2'
+'-756EA3FA2ACFF4^-3'
+'-41CAC405ABF67C^-4'
+'145050BB11A271^-4'
+'4CDC00DE6F0578^-5'
+'7CA46583C15238^-6'
+'-71D0F8DD7A037^5'
+'-12E2B91FA2FBAD^4'
+'14063871AA063D^2'
+'1783F9AF514A3E^0'
+'1328667DE5830E^-1'
+'1316EEE3A65993^-2'
+'-398864968ACBE6^-3'
+'-EC2B27195D9F8^-4'
+'-1924513041E0DD^-4'
+'-2F211D50E33472^-6'
+'6D51E8C451716C^-6'
+'-308C5964493074^5'
+'-8FF7B545B690B^3'
+'81CDCF5E78D5A^1'
+'CCFE9A980F357^-1'
+'C610B3F6D9CFA^-2'
+'1042BF5C2AA94E^-2'
+'-12AB6E485D1FDD^-3'
+'-7756C681ABF618^-4'
+'-F8960BCCCD08D^-5'
+'-98CB7AE6B1C18^-6'
+'2D7537A39870C2^-6'
+'-2C4A8CC^8'
+'1518^6'
+'23^2'
+'1^1'
+END_ARRAY 2 39
+BEGIN_ARRAY 3 39
+'DE-0721LE-0721                          '
+'-2C3F00B654EA7E^8'
+'-2C3EF5A98E0114^8'
+'4'
+'0'
+'1'
+'2'
+39
+'-2C4A8CC^8'
+'1518^6'
+'-E5B6D74C75DE2^7'
+'-643D76239DB9F4^6'
+'F2C93D0697DFC^5'
+'16214E2FF0D414^4'
+'-EE9FD74754FCA8^2'
+'-100FB2BD8FD6D9^1'
+'-B025832306E1E^-1'
+'-F5D51A9517D62^-3'
+'5AF7B5971BF80C^-4'
+'1C91A8C52F1F47^-5'
+'17A964AFADCA8E^-6'
+'2FB8EAD9BF3AC^7'
+'-19C61126BDC5A9^7'
+'-32E28870E155C6^5'
+'47A04AE35C9A^4'
+'5396E0073CF774^2'
+'-729F9754FE2B04^0'
+'-58903651480104^-2'
+'-34C035E62D600A^-2'
+'-584C57A08E015C^-4'
+'-27990B5E6B5EAA^-5'
+'-144FC0D16A2CCC^-6'
+'1C1F619FEC7689^7'
+'-BA6C0730B129A^6'
+'-1DEAAE3E44EFF6^5'
+'20409F1BCF505A^4'
+'2CCDB8F97EBC0C^2'
+'-2D9AEE0704A8D4^0'
+'23E006DB88DB62^-2'
+'-17C41DAAD996A2^-2'
+'-2A910332B3C0FC^-4'
+'-12A1A650F76381^-5'
+'-B378E4E5B5C22^-7'
+'-2C5FA4C^8'
+'2A3^6'
+'23^2'
+'1^1'
+END_ARRAY 3 39
+BEGIN_ARRAY 4 54
+'MAR097                                  '
+'-2C3F00B654EA7E^8'
+'-2C3EF5A98E0114^8'
+'1F3'
+'4'
+'1'
+'3'
+54
+'-2C3ED97^8'
+'2A3^4'
+'8923746F47BA6^-4'
+'8730C71F3AA63^-3'
+'58FADEC94F2968^-3'
+'-2C7C672962C18^-3'
+'-D6FB1B8F1858C^-4'
+'3F5513081AC1A6^-4'
+'8ACD8407C1043^-5'
+'-2AA9A81AFCBF2^-5'
+'-2ABF1BC56E776C^-3'
+'-446395088ADF5C^-3'
+'74090AE0A3875C^-3'
+'1EBF63251E68C4^-3'
+'-11DB19E75CE682^-3'
+'-23123CDB81C202^-4'
+'F47CE931A524B8^-5'
+'13C59BAC1CC28^-6'
+'-197D32A40E685C^-3'
+'-6EFF23753160B^-3'
+'BD71AE06B3FEC8^-4'
+'29744C77D64AFA^-3'
+'-1FFF45EF4A0951^-4'
+'-36658289E7B914^-4'
+'34D15D935EA536^-5'
+'18A900D4EA963^-5'
+'7B883FA42AF96^-7'
+'60AFCF493791D^-6'
+'-571A5E2879FB9C^-6'
+'-264C9483AC3B3A^-6'
+'E20936B2CB705^-7'
+'277B4FA72EF02^-7'
+'-E285F3AA384D48^-8'
+'0^0'
+'4E72B8D9639FC^-7'
+'7E334823A4778^-6'
+'3DAE2A60FD54^-6'
+'-31D45E2B743A88^-6'
+'-8499D0FEBB5B3^-7'
+'458B1168017688^-7'
+'68FB43AA201968^-9'
+'0^0'
+'-11F3AB7EC77A6^-7'
+'CD55EC95D13A4^-7'
+'51F2F334E5BD68^-6'
+'-520EDA2FB4A4D4^-7'
+'-C61ECDCEFB0E88^-7'
+'F0613CA585C81^-8'
+'82EFB587B5BF^-8'
+'0^0'
+'-2C3F03A^8'
+'546^4'
+'32^2'
+'1^1'
+END_ARRAY 4 54
+TOTAL_ARRAYS 4
+ ~NAIF/SPC BEGIN COMMENTS~
+; /home/pgiroux/Desktop/f004a47/f004a47_0.bsp LOG FILE
+
+; Created 2019-09-30/09:31:27.00.
+;
+; BEGIN SPKMERGE COMMANDS
+
+LEAPSECONDS_KERNEL   = /usgs/cpkgs/isis3/data/base/kernels/lsk/naif0012.tls
+
+SPK_KERNEL           = /home/pgiroux/Desktop/f004a47/f004a47_0.bsp
+  SOURCE_SPK_KERNEL  = /usgs/cpkgs/isis3/data/viking1/kernels/spk/viking1a.bsp
+    INCLUDE_COMMENTS = NO
+    BODIES           = -27
+    BEGIN_TIME       = 1976 JUN 23 18:11:38.484
+    END_TIME         = 1976 JUN 23 18:58:47.261
+  SOURCE_SPK_KERNEL  = /usgs/cpkgs/isis3/data/base/kernels/spk/mar097.bsp
+    INCLUDE_COMMENTS = NO
+    BODIES           = 4, 10, 499
+    BEGIN_TIME       = 1976 JUN 23 18:11:38.484
+    END_TIME         = 1976 JUN 23 18:58:47.261
+
+; END SPKMERGE COMMANDS
+ ~NAIF/SPC END COMMENTS~
diff --git a/tests/pytests/data/f004a47/f004a47_isis3.lbl b/tests/pytests/data/f004a47/f004a47_isis3.lbl
new file mode 100644
index 0000000..91a9a8a
--- /dev/null
+++ b/tests/pytests/data/f004a47/f004a47_isis3.lbl
@@ -0,0 +1,105 @@
+Object = IsisCube
+  Object = Core
+    StartByte   = 65537
+    Format      = Tile
+    TileSamples = 1204
+    TileLines   = 1056
+
+    Group = Dimensions
+      Samples = 1204
+      Lines   = 1056
+      Bands   = 1
+    End_Group
+
+    Group = Pixels
+      Type       = UnsignedByte
+      ByteOrder  = Lsb
+      Base       = 0.0
+      Multiplier = 1.0
+    End_Group
+  End_Object
+
+  Group = Instrument
+    SpacecraftName       = VIKING_ORBITER_1
+    InstrumentId         = VISUAL_IMAGING_SUBSYSTEM_CAMERA_A
+    TargetName           = MARS
+    StartTime            = 1976-06-23T18:42:11
+    ExposureDuration     = 0.012730 <seconds>
+    SpacecraftClockCount = 25973540
+    FloodModeId          = ON
+    GainModeId           = HIGH
+    OffsetModeId         = OFF
+  End_Group
+
+  Group = Archive
+    DataSetId       = VO1/VO2-M-VIS-2-EDR-V2.0
+    ProductId       = 004A47
+    MissonPhaseName = PRIMARY_MISSION
+    ImageNumber     = 25973540
+    OrbitNumber     = 4
+  End_Group
+
+  Group = BandBin
+    FilterName = CLEAR
+    FilterId   = 4
+    Center     = 0.52 <micrometers>
+    Width      = 0.35 <micrometers>
+  End_Group
+
+  Group = Kernels
+    NaifFrameCode = -27001
+    CameraVersion = 1
+  End_Group
+
+
+  Group = Reseaus
+    Line     = (4, 8, 11, 13, 15, 17, 18, 20, 21, 22, 23, 132, 134, 137, 139,
+                141, 143, 145, 147, 148, 150, 151, 152, 260, 264, 266, 268,
+                270, 272, 274, 276, 277, 279, 281, 389, 391, 394, 396, 398,
+                400, 401, 403, 405, 407, 408, 409, 518, 521, 523, 526, 528,
+                529, 531, 532, 534, 536, 538, 647, 648, 651, 653, 655, 657,
+                658, 660, 662, 663, 665, 666, 776, 779, 781, 783, 785, 786,
+                788, 789, 790, 792, 794, 906, 907, 909, 911, 913, 914, 915,
+                917, 918, 920, 922, 923, 1035, 1037, 1039, 1040, 1042, 1043,
+                1044, 1046, 1047, 1048, 1051)
+    Sample   = (18, 137, 255, 372, 489, 605, 721, 837, 954, 1070, 1187, 20,
+                79, 197, 314, 431, 547, 663, 779, 895, 1011, 1127, 1186, 20,
+                139, 256, 373, 490, 605, 721, 837, 953, 1069, 1185, 21, 81,
+                199, 316, 432, 548, 663, 779, 895, 1010, 1126, 1184, 22, 141,
+                257, 374, 489, 605, 721, 836, 952, 1068, 1184, 22, 82, 199,
+                316, 431, 547, 663, 778, 893, 1009, 1125, 1183, 22, 141, 257,
+                373, 489, 604, 719, 835, 950, 1066, 1182, 22, 81, 198, 314,
+                430, 545, 660, 776, 891, 1007, 1123, 1181, 20, 138, 255, 371,
+                486, 602, 717, 832, 948, 1064, 1180)
+    Type     = (1, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+                5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5,
+                5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5,
+                5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5,
+                5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6)
+    Valid    = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
+    Template = $viking1/reseaus/vo1.visa.template.cub
+    Status   = Nominal
+  End_Group
+End_Object
+
+Object = Label
+  Bytes = 65536
+End_Object
+
+Object = History
+  Name      = IsisCube
+  StartByte = 1336961
+  Bytes     = 428
+End_Object
+
+Object = OriginalLabel
+  Name      = IsisCube
+  StartByte = 1337389
+  Bytes     = 2052
+End_Object
+
+End
diff --git a/tests/pytests/data/f004a47/f004a47_pds3.lbl b/tests/pytests/data/f004a47/f004a47_pds3.lbl
new file mode 100644
index 0000000..923e898
--- /dev/null
+++ b/tests/pytests/data/f004a47/f004a47_pds3.lbl
@@ -0,0 +1,1633 @@
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+/*          FILE FORMAT AND LENGTH */
+RECORD_TYPE                      = VARIABLE_LENGTH
+RECORD_BYTES                     = 1204
+FILE_RECORDS                     = 2177
+LABEL_RECORDS                    = 61
+/*          POINTERS TO START RECORDS OF MAJOR OBJECTS IN FILE */
+^IMAGE_HISTOGRAM                 = 62
+^ENCODING_HISTOGRAM              = 63
+^ENGINEERING_TABLE               = 65
+^LINE_HEADER_TABLE               = 66
+^IMAGE                           = 1122
+/*          IMAGE DESCRIPTION */
+DATA_SET_ID                      = 'VO1/VO2-M-VIS-2-EDR-V2.0'
+SPACECRAFT_NAME                  = VIKING_ORBITER_1
+MISSION_PHASE_NAME               = PRIMARY_MISSION
+TARGET_NAME                      = MARS
+IMAGE_ID                         = '004A47'
+IMAGE_NUMBER                     = 25973540
+IMAGE_TIME                       = 1976-06-23T18:42:11Z
+EARTH_RECEIVED_TIME              = 1976-06-24T07:34:44Z
+ORBIT_NUMBER                     = 4
+INSTRUMENT_NAME                  = VISUAL_IMAGING_SUBSYSTEM_CAMERA_A
+GAIN_MODE_ID                     = HIGH
+FLOOD_MODE_ID                    = ON
+OFFSET_MODE_ID                   = OFF
+FILTER_NAME                      = CLEAR
+EXPOSURE_DURATION                = 0.012730 <SECONDS>
+NOTE                             = "HIGH RESOLUTION STEREO SEQUENCE OF
+     THE A1 LANDING SITE"
+/*          DESCRIPTION OF THE OBJECTS CONTAINED IN FILE */
+OBJECT                           = IMAGE_HISTOGRAM
+ ITEMS                           = 256
+ ITEM_TYPE                       = VAX_INTEGER
+ ITEM_BITS                       = 32
+END_OBJECT
+OBJECT                           = ENCODING_HISTOGRAM
+ ITEMS                           = 511
+ ITEM_TYPE                       = VAX_INTEGER
+ ITEM_BITS                       = 32
+END_OBJECT
+OBJECT                           = ENGINEERING_TABLE
+ ROWS                            = 1
+ ROW_BYTES                       = 152
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+
+OBJECT                         = ENGINEERING_TABLE_STRUCTURE
+  INTERCHANGE_FORMAT           = BINARY
+  BYTES                        = 152
+  NOTE                         = "This structure describes the format of
+        the engineering record that is included in each image file.
+        This record contains the first 152 bytes of data extracted from
+        the Mission and Test Imaging System (MTIS) header record on each
+        file of an imaging EDR tape."
+
+  OBJECT                       = COLUMN
+    NAME                       = MTIS_RECORD_ID
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 1
+    BYTES                      = 2
+    DESCRIPTION                = "Mission and Test Imaging System record
+        ID."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PHYSICAL_SEQUENCE_NUMBER
+    DATA_TYPE                  = VAX_UNSIGNED_INTEGER
+    START_BYTE                 = 3
+    BYTES                      = 2
+    DESCRIPTION                = "Physical sequence number on Experiment
+        Data Record tape.  Not used."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LOGICAL_SEQUENCE_NUMBER
+    DATA_TYPE                  = VAX_UNSIGNED_INTEGER
+    START_BYTE                 = 5
+    BYTES                      = 2
+    DESCRIPTION                = "Logical sequence number on Experiment
+        Data Record tape.  Not used."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 7
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time year and day
+        value.  Time of first line segment in the file containing valid
+        data.  This field is NOT stored in VAX least significant byte
+        first format."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FIRST_ERT_YEAR
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 1
+      BITS                     = 7
+      DESCRIPTION              = "Earth Received Time year of century
+        (1900).  Time of first line record in the file containing valid
+        data.  This field is often incorrect."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FIRST_ERT_DAY
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 7
+      BITS                     = 9
+      DESCRIPTION              = "Earth Received Time day of year."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT_MINUTE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 9
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time minute of day."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT_MILLISECOND
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 11
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time millisecond of
+        minute."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 13
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time year and day
+        value.  Time of last line segment of the file containing valid
+        data."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LAST_ERT_YEAR
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 1
+      BITS                     = 7
+      DESCRIPTION              = "Earth Received Time year of century
+        (1900).  This field is often incorrect."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LAST_ERT_DAY
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 8
+      BITS                     = 9
+      DESCRIPTION              = "Earth Received Time day of year."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT_MINUTE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 15
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time minute of day."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT_MILLISECOND
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 17
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time millisecond of
+        minute."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 19
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem count for the
+        first line segment of the file containing valid data.  Note that
+        this may not correspond to the FDS count for line 1, segment 1."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 23
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem count for the
+        last line segment of the file containing valid data.  Note that
+        this may not correspond to the FDS count for segment 7 of line
+        1056."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EDR_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 27
+    BYTES                      = 6
+    DESCRIPTION                = "Tape reel identifier of the original
+        EDR tape for this image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EDR_FILE_NUMBER
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 33
+    BYTES                      = 2
+    DESCRIPTION                = "File number of image on original EDR
+        tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILL_IN
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 34
+    BYTES                      = 1
+    DESCRIPTION                = "Value used to fill in missing samples
+        (always zero)."
+  END_OBJECT                   = COLUMN
+  OBJECT                       = COLUMN
+    NAME                       = TRACK_PRESENCE_MASK
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 36
+    BYTES                      = 1
+    DESCRIPTION                = "Mask indicating which tracks are
+        present in the image.  The nominal value is HEX 7F, indicating
+        that all seven tracks are present."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = AVERAGE_PIXEL
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 37
+    BYTES                      = 2
+    DESCRIPTION                = "Average pixel value for image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_1
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 39
+    BYTES                      = 4
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MINIMUM_SNR
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 43
+    BYTES                      = 2
+    FACTOR                     = 0.03125
+    DESCRIPTION                = "Minimum signal to noise ratio.  The
+        minimum noise level found for the scan lines.  Divide by 32 to
+        get the actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MAXIMUM_SNR
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 45
+    BYTES                      = 2
+    FACTOR                     = 0.03125
+    DESCRIPTION                = "Maximum signal to noise ratio.  The
+        maximum noise level found for the scan lines.  Divide by 32 to
+        get the actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_2
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 47
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MINIMUM_AGC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 49
+    BYTES                      = 2
+    FACTOR                     = 0.0625
+    DESCRIPTION                = "Automatic gain control minimum.
+        Divide by 16 to get actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MAXIMUM_AGC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 51
+    BYTES                      = 2
+    FACTOR                     = 0.0625
+    DESCRIPTION                = "Automatic gain control maximum.
+        Divide by 16 to get actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_3
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 53
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 55
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that contain some valid data (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 57
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that were fully synchronized (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 59
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that were partly synchronized (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI0_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 61
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 0 (maximum is 7 x 1056).
+        DQI0 indicates bad data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI1_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 63
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 1 (maximum is 7 x 1056).
+        DQI1 means SNR low, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI2_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 65
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 2 (maximum is 7 x 1056).
+        DQI2 means SNR good, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI3_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 67
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 3 (maximum is 7 x 1056).
+        DQI3 means SNR low, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI4_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 69
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 4 (maximum is 7 x 1056).
+        DQI4 means SNR good, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FDS_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 71
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected FDS counts."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PNERROR_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 73
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected pseudonoise codes."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = ADJUSTED_PNERROR_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 75
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected pseudonoise codes adjusted based on the
+        number of line segments processed versus the total in a full
+        image (7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNREADABLE_RECORDS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 77
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that could not be read from the Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LOGICAL_SEQUENCE_BREAKS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 79
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of breaks in logical
+        sequence number in reading the System/Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DATA_BREAKS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 81
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of breaks in data
+        sequence in reading the System/Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_4
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 83
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 85
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of lines in the file that
+        contain some valid data (nominal is 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULL_LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 87
+    BYTES                      = 2
+    DESCRIPTION                = "Number of lines in the file that are
+        composed of seven line segments."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTIAL_LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 89
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line records in the
+        file that contain some valid data but are not composed of seven
+        line segments."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 91
+    BYTES                      = 2
+    DESCRIPTION                = "First line in image containing valid
+        data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 93
+    BYTES                      = 2
+    DESCRIPTION                = "Last line in image containing valid
+        data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_5
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 95
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = IMAGE_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 97
+    BYTES                      = 6
+    DESCRIPTION                = "Image identifier (PICNO) for this
+        image, formatted OOOSNN, where OOO is orbit number, S is
+        spacecraft identifier (A for Viking Orbiter 1 prime and extended
+        missions; B for Viking Orbiter 2; and S for Viking Orbiter 1
+        Survey mission)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VRP_RUN_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 103
+    BYTES                      = 2
+    DESCRIPTION                = "Viking Reconstruction Processing run
+        number."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DISK_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 105
+    BYTES                      = 6
+    DESCRIPTION                = "MTIS disk identifier of the original
+        EDR file for this image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_6
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 111
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRANSMITTED_CODE_WORD1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 113
+    BYTES                      = 2
+    DESCRIPTION                = "Transmitted command code word for the
+        image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  Where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CATHODE_CURRENT_FLAG
+      START_BIT                = 7
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Cathode current off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = GAIN_FLAG
+      START_BIT                = 8
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Gain mode low (0) or high (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LIGHT_FLOOD_FLAG
+      START_BIT                = 9
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Light flood off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_STEP
+      START_BIT                = 10
+      BITS                     = 2
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter step indicator."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = EXPOSURE_CODE
+      START_BIT                = 12
+      BITS                     = 5
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Exposure interval code."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRANSMITTED_CODE_WORD2
+    DATA_TYPE                  = INTEGER
+    START_BYTE                 = 115
+    BYTES                      = 2
+    DESCRIPTION                = "Transmitted command code word 2 for
+        this image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_NUMBER
+      START_BIT                = 10
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter number:  where 1 is blue; 2 is
+        minus blue; 3 is violet; 4 is clear; 5 is green; and 6 is red."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CAMERA_SERIAL_NUMBER
+      START_BIT                = 13
+      BITS                     = 4
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Visual Imaging Subsystem camera serial
+        number."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = RECEIVED_CODE_WORD1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 117
+    BYTES                      = 2
+    DESCRIPTION                = "Received command code word for the
+        image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CATHODE_CURRENT_FLAG
+      START_BIT                = 7
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Cathode current (beam) off (0) or on
+        (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = GAIN_FLAG
+      START_BIT                = 8
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Gain mode low (0) or high (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LIGHT_FLOOD_FLAG
+      START_BIT                = 9
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Light flood off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_STEP
+      START_BIT                = 10
+      BITS                     = 2
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter step."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = EXPOSURE_CODE
+      START_BIT                = 12
+      BITS                     = 5
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Exposure interval code."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS50_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 121
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 50 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS15_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 123
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 15 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS12_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 125
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 12 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS5_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 127
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 5 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_MINUS15_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 129
+    BYTES                      = 2
+    DESCRIPTION                = "Minus 15 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_MINUS23_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 131
+    BYTES                      = 2
+    DESCRIPTION                = "Minus 23 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_AVERAGE_VIDEO
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 133
+    BYTES                      = 2
+    DESCRIPTION                = "Average video."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = POWER_CONVERTER_INPUT_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 135
+    BYTES                      = 2
+    DESCRIPTION                = "Power converter input current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = CATHODE_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 137
+    BYTES                      = 2
+    DESCRIPTION                = "Cathode current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = CATHODE_VOLTAGE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 139
+    BYTES                      = 2
+    DESCRIPTION                = "Cathode voltage."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILAMENT_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 141
+    BYTES                      = 2
+    DESCRIPTION                = "Filament current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FRAME_SWEEP_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 143
+    BYTES                      = 2
+    DESCRIPTION                = "Frame sweep current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_SWEEP_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 145
+    BYTES                      = 2
+    DESCRIPTION                = "Line sweep current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = GRID3_VOLTAGE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 147
+    BYTES                      = 2
+    DESCRIPTION                = "Grid 3 voltage."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FOCUS_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 149
+    BYTES                      = 2
+    DESCRIPTION                = "Focus current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DIGITAL_LADDER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 151
+    BYTES                      = 2
+    DESCRIPTION                = "Digital ladder."
+  END_OBJECT                   = COLUMN
+
+END_OBJECT                     = ENGINEERING_TABLE_STRUCTURE
+
+END
+END_OBJECT
+OBJECT                           = LINE_HEADER_TABLE
+ ROWS                            = 1056
+ ROW_BYTES                       = 62
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+
+OBJECT                         = LINE_HEADER_TABLE_STRUCTURE
+  INTERCHANGE_FORMAT           = BINARY
+  BYTES                        = 62
+  NOTE                         = "Viking Orbiter Image Line-header
+        Structure.  This label describes the structure of the 62-bytes
+        extracted from the end of each image line."
+
+  OBJECT                       = COLUMN
+    NAME                       = FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 1
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem (FDS) clock
+        count."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 5
+    BYTES                      = 2
+    DESCRIPTION                = "Flight Data Subsystem line number,
+        extracted from the telemetry record header information."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILL_IN
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 7
+    BYTES                      = 1
+    DESCRIPTION                = "Value used to fill in missing samples
+        (always zero)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRACK_PRESENCE_MASK
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 8
+    BYTES                      = 1
+    DESCRIPTION                = "Mask indicating which tracks are
+        present in this line.  The nominal value is HEX 7F, indicating
+        that all seven tracks are present."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = AVERAGE_PIXEL
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 9
+    BYTES                      = 2
+    DESCRIPTION                = "Average pixel value for this line."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 11
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        line that contain some valid data (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 13
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        that were fully synchronized (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 15
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        that were partly synchronized (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI0_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 17
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 0 (maximum is 7), indicating
+        bad data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI1_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 19
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 1 (maximum is 7), indicating
+        SNR low, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI2_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 21
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 2 (maximum is 7), indicating
+        SNR good, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI3_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 23
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 3 (maximum is 7), indicating
+        SNR low, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI4_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 25
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 4 (maximum is 7), indicating
+        SNR good, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 27
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 29
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT2
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 31
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK2
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 33
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT3
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 35
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK3
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 37
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+        START_BIT              = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT4
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 39
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK4
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 41
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT5
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 43
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK5
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 45
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT6
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 47
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK6
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 49
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT7
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 51
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK7
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 53
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EMBEDDED_SCIENCE_DATA
+    ITEMS                      = 7
+    DATA_TYPE                  = INTEGER
+    START_BYTE                 = 55
+    ITEM_BYTES                 = 1
+    DESCRIPTION                = "Embedded low rate science data from
+        seven segments."
+  END_OBJECT                   = COLUMN
+
+END_OBJECT                     = LINE_HEADER_TABLE_STRUCTURE
+
+END
+END_OBJECT
+OBJECT                           = IMAGE
+ ENCODING_TYPE                   = HUFFMAN_FIRST_DIFFERENCE
+ LINES                           = 1056
+ LINE_SAMPLES                    = 1204
+ SAMPLE_TYPE                     = UNSIGNED_INTEGER
+ SAMPLE_BITS                     = 8
+ SAMPLE_BIT_MASK                 = 2#11111110#
+ CHECKSUM                        = 205881028
+END_OBJECT
+END
diff --git a/tests/pytests/data/f004a47/naif0012.tls b/tests/pytests/data/f004a47/naif0012.tls
new file mode 100644
index 0000000..e1afdee
--- /dev/null
+++ b/tests/pytests/data/f004a47/naif0012.tls
@@ -0,0 +1,152 @@
+KPL/LSK
+
+
+LEAPSECONDS KERNEL FILE
+===========================================================================
+
+Modifications:
+--------------
+
+2016, Jul. 14   NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2016.
+
+2015, Jan. 5    NJB  Modified file to account for the leapsecond that
+                     will occur on June 30, 2015.
+
+2012, Jan. 5    NJB  Modified file to account for the leapsecond that
+                     will occur on June 30, 2012.
+                     
+2008, Jul. 7    NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2008.
+                     
+2005, Aug. 3    NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2005.
+                     
+1998, Jul  17   WLT  Modified file to account for the leapsecond that
+                     will occur on December 31, 1998.
+                     
+1997, Feb  22   WLT  Modified file to account for the leapsecond that
+                     will occur on June 30, 1997.
+                     
+1995, Dec  14   KSZ  Corrected date of last leapsecond from 1-1-95
+                     to 1-1-96.
+
+1995, Oct  25   WLT  Modified file to account for the leapsecond that
+                     will occur on Dec 31, 1995.
+
+1994, Jun  16   WLT  Modified file to account for the leapsecond on
+                     June 30, 1994.
+
+1993, Feb. 22  CHA   Modified file to account for the leapsecond on
+                     June 30, 1993.
+
+1992, Mar. 6   HAN   Modified file to account for the leapsecond on
+                     June 30, 1992.
+
+1990, Oct. 8   HAN   Modified file to account for the leapsecond on 
+                     Dec. 31, 1990.  
+
+
+Explanation:
+------------
+
+The contents of this file are used by the routine DELTET to compute the 
+time difference
+
+[1]       DELTA_ET  =  ET - UTC                                         
+          
+the increment to be applied to UTC to give ET. 
+
+The difference between UTC and TAI,
+
+[2]       DELTA_AT  =  TAI - UTC
+
+is always an integral number of seconds. The value of DELTA_AT was 10
+seconds in January 1972, and increases by one each time a leap second
+is declared. Combining [1] and [2] gives
+
+[3]       DELTA_ET  =  ET - (TAI - DELTA_AT)
+
+                    =  (ET - TAI) + DELTA_AT
+
+The difference (ET - TAI) is periodic, and is given by
+
+[4]       ET - TAI  =  DELTA_T_A  + K sin E 
+
+where DELTA_T_A and K are constant, and E is the eccentric anomaly of the 
+heliocentric orbit of the Earth-Moon barycenter. Equation [4], which ignores 
+small-period fluctuations, is accurate to about 0.000030 seconds.
+
+The eccentric anomaly E is given by 
+
+[5]       E = M + EB sin M
+
+where M is the mean anomaly, which in turn is given by 
+
+[6]       M = M  +  M t
+               0     1
+
+where t is the number of ephemeris seconds past J2000.
+
+Thus, in order to compute DELTA_ET, the following items are necessary.
+
+          DELTA_TA
+          K
+          EB
+          M0
+          M1
+          DELTA_AT      after each leap second.
+
+The numbers, and the formulation, are taken from the following sources.
+
+     1) Moyer, T.D., Transformation from Proper Time on Earth to 
+        Coordinate Time in Solar System Barycentric Space-Time Frame
+        of Reference, Parts 1 and 2, Celestial Mechanics 23 (1981),
+        33-56 and 57-68.
+
+     2) Moyer, T.D., Effects of Conversion to the J2000 Astronomical
+        Reference System on Algorithms for Computing Time Differences
+        and Clock Rates, JPL IOM 314.5--942, 1 October 1985.
+
+The variable names used above are consistent with those used in the 
+Astronomical Almanac.
+
+\begindata
+
+DELTET/DELTA_T_A       =   32.184
+DELTET/K               =    1.657D-3
+DELTET/EB              =    1.671D-2
+DELTET/M               = (  6.239996D0   1.99096871D-7 )
+
+DELTET/DELTA_AT        = ( 10,   @1972-JAN-1
+                           11,   @1972-JUL-1     
+                           12,   @1973-JAN-1     
+                           13,   @1974-JAN-1     
+                           14,   @1975-JAN-1          
+                           15,   @1976-JAN-1          
+                           16,   @1977-JAN-1          
+                           17,   @1978-JAN-1          
+                           18,   @1979-JAN-1          
+                           19,   @1980-JAN-1          
+                           20,   @1981-JUL-1          
+                           21,   @1982-JUL-1          
+                           22,   @1983-JUL-1          
+                           23,   @1985-JUL-1          
+                           24,   @1988-JAN-1 
+                           25,   @1990-JAN-1
+                           26,   @1991-JAN-1 
+                           27,   @1992-JUL-1
+                           28,   @1993-JUL-1
+                           29,   @1994-JUL-1
+                           30,   @1996-JAN-1 
+                           31,   @1997-JUL-1
+                           32,   @1999-JAN-1
+                           33,   @2006-JAN-1
+                           34,   @2009-JAN-1
+                           35,   @2012-JUL-1
+                           36,   @2015-JUL-1 
+                           37,   @2017-JAN-1 )
+
+\begintext
+
+
diff --git a/tests/pytests/data/f004a47/pck00009.tpc b/tests/pytests/data/f004a47/pck00009.tpc
new file mode 100644
index 0000000..bfadaab
--- /dev/null
+++ b/tests/pytests/data/f004a47/pck00009.tpc
@@ -0,0 +1,3639 @@
+KPL/PCK
+ 
+
+P_constants (PcK) SPICE kernel file
+===========================================================================
+
+        By: Nat Bachman (NAIF)    2010 March 3
+ 
+ 
+Purpose
+--------------------------------------------------------
+
+     This file makes available for use in SPICE-based application
+     software orientation and size/shape data for natural bodies. The
+     principal source of the data is a published report by the IAU/IAG
+     Working Group on Cartographic Coordinates and Rotational Elements [1].
+
+     Orientation and size/shape data not provided by this file may be
+     available in mission-specific PCK files. Such PCKs may be the preferred
+     data source for mission-related applications. Mission-specific PCKs can
+     be found in PDS archives or on the NAIF web site at URL:
+
+        http://naif.jpl.nasa.gov
+
+
+File Organization
+--------------------------------------------------------
+ 
+     The contents of this file are as follows.
+ 
+     Introductory Information:
+
+         --   Purpose
+
+         --   File Organization
+ 
+         --   Version description
+ 
+         --   Disclaimer
+ 
+         --   Sources
+ 
+         --   Explanatory notes
+ 
+         --   Body numbers and names
+ 
+
+     PcK Data:
+ 
+
+        Orientation Data
+        ----------------
+
+         --   Orientation constants for the Sun and planets.        
+              Additional items included in this section:
+
+                 - Earth north geomagnetic centered dipole values
+                   for epochs 1945-2000
+
+                 - Mars prime meridian offset "lambda_a"
+
+         --   Orientation constants for satellites
+ 
+         --   Orientation constants for asteroids Eros, Gaspra, Ida,
+              Itokawa, and Vesta
+ 
+         --   Orientation constants for comets 19P/Borrelly
+              and 9P/Tempel 1
+
+
+        Radii of Bodies
+        ---------------
+
+         --   Radii of Sun and planets
+         
+         --   Radii of satellites, where available
+         
+         --   Radii of asteroids Ceres, Eros, Gaspra, Ida, Itokawa,
+              Mathilde, Toutatis, and Vesta.
+            
+         --   Radii of comets 19P/Borrelly, Halley, 9P/Tempel 1,
+              and 81P/Wild 2
+
+
+
+Version Description
+--------------------------------------------------------
+ 
+     This file was created on March 3, 2010. This version
+     incorporates data from reference [1].
+ 
+     This file contains size, shape, and orientation data for all
+     objects described by the previous version of the file, except
+     for Kleopatra: a shape model for this body is not provided in [1]
+     because, according to this source, it had been "modeled from
+     low resolution radar data, and cannot be mapped from those
+     data."
+
+     New objects covered by this file but not the previous
+     version are:
+        
+        19P/Borrelly
+        Halley
+        9P/Tempel 1
+        81P/Wild 2
+        Ceres
+        Itokawa
+        Mathilde
+        Toutatis
+                         
+ 
+Disclaimer
+--------------------------------------------------------
+ 
+Applicability of Data
+
+     This P_constants file may not contain the parameter values that
+     you prefer. NAIF suggests that you inspect this file visually
+     before proceeding with any critical or extended data processing.
+
+File Modifications by Users
+
+     Note that this file may be readily modified by you to change
+     values or add/delete parameters. NAIF requests that you update the
+     "by line," date, and version description section if you modify
+     this file.
+     
+Known Limitations and Caveats
+
+     Accuracy
+     --------
+
+     In general, the orientation models given here are claimed by the
+     IAU/IAG Working Group Report [1] to be accurate to 0.1 degree
+     ([1], p.158). However, NAIF notes that orientation models for
+     natural satellites and asteroids have in some cases changed
+     substantially with the availability of new observational data, so
+     users are urged to investigate the suitability for their
+     applications of the models presented here.
+
+     Earth orientation
+     -----------------
+
+     NAIF strongly cautions against using the earth rotation model
+     (from [1]) for work demanding high accuracy. This model has been
+     determined by NAIF to have an error in the prime meridian location
+     of magnitude at least 150 arcseconds, with a local minimum
+     occurring during the year 1999. Regarding availability of better
+     earth orientation data for use with the SPICE system:
+
+        Earth orientation data are available from NAIF in the form of
+        binary earth PCK files. NAIF employs an automated process to
+        create these files; each time JPL's Tracking Systems and
+        Applications Section produces a new earth orientation parameter
+        (EOP) file, a new PCK is produced. These PCKs cover a roughly
+        10 year time span starting at Jan. 1, 2000. In these PCK files,
+        the following effects are accounted for in modeling the earth's
+        rotation:
+
+           - Precession:                   1976 IAU model
+
+           - Nutation:                     1980 IAU model, plus interpolated
+                                           EOP nutation corrections
+
+           - Polar motion:                 interpolated from EOP file
+
+           - True sidereal time:
+
+                  UT1 - UT1R (if needed):  given by analytic formula
+                + TAI - UT1 (or UT1R):     interpolated from EOP file
+                + UT1 - GMST:              given by analytic formula
+                + equation of equinoxes:   given by analytic formula
+
+             where
+
+                TAI    =   International Atomic Time
+                UT1    =   Greenwich hour angle of computed mean sun - 12h
+                UT1R   =   Regularized UT1
+                GMST   =   Greenwich mean sidereal time                   
+
+        These kernels are available from the NAIF web site
+
+           http://naif.jpl.nasa.gov
+
+        (follow the links to Data, generic_kernels, and PCK data) or
+
+           ftp://naif.jpl.nasa.gov/pub/naif/generic_kernels/pck
+
+        or via anonymous ftp from the server
+ 
+           naif.jpl.nasa.gov
+
+        The kernels are in the path
+
+           pub/naif/generic_kernels/pck
+
+        At this time, these kernels have file names of the form
+
+           earth_000101_yymmdd_yymmdd.bpc
+
+        The second and third dates are, respectively, the file's 
+        coverage end time and the epoch of the last datum.
+ 
+        These binary PCK files are very accurate (error < 0.1
+        microradian) for epochs preceding the epoch of the last datum.
+        For later epochs, the error rises to several microradians.
+
+        Binary PCK files giving accurate earth orientation from 1972 to
+        2007 and *low accuracy* predicted earth orientation from
+        2007 to 2037 are also available in the same location. See the
+        aareadme.txt file at the "pck" URL above for details.
+
+        Characteristics and names of the binary kernels described here
+        are subject to change. See the "pck" URL above for information
+        on current binary earth PCKs.
+
+
+     Lunar orientation
+     -----------------
+
+     The lunar orientation formula provided by this file is a
+     trigonometric polynomial approximation yielding the orientation of
+     the lunar "Mean Earth/Polar Axis" (ME) reference frame. A more
+     accurate approximation can be obtained by using both the NAIF
+     lunar frame kernel and the binary lunar orientation PCK file,
+     which are available on the NAIF web site (see URLS above)
+     and in the NAIF server's ftp area. The lunar frame kernel
+     is located in the path
+
+        pub/naif/generic_kernels/fk/satellites
+
+     and has a name of the form
+
+        moon_yymmdd.tf
+
+     The binary lunar PCK is in the path
+
+        pub/naif/generic_kernels/pck
+
+     and has a name of the form
+
+        moon_pa_dennn_yyyy-yyyy.bpc
+
+     See the "aareadme.txt" files in the paths shown above for details
+     on file contents and versions. We also suggest you refer to the
+     SPICE tutorial named "lunar_earth_pck-fk," which is available from
+     the NAIF web site.
+
+
+     Earth geomagnetic dipole
+     ------------------------
+
+     The SPICE Toolkit doesn't currently contain software to model the
+     earth's north geomagnetic centered dipole as a function of time.
+     As a convenience for users, the north dipole location from the
+     J2000 epoch was selected as a representative datum, and the
+     planetocentric longitude and latitude of this location have been
+     associated with the keywords
+       
+        BODY399_N_GEOMAG_CTR_DIPOLE_LON
+        BODY399_N_GEOMAG_CTR_DIPOLE_LAT
+     
+     Values for the earth's north geomagnetic centered dipole are
+     presented in comments as a discrete time series for the time range
+     1945-2000. For details concerning the geomagnetic field model from
+     which these values were derived, including a discussion of the
+     model's accuracy, see [9].
+ 
+
+     Mars prime meridian offset
+     --------------------------
+
+     The Mars prime meridian offset given by [5] is not used by
+     SPICE geometry software for computations involving the shape
+     of Mars (for example, in sub-observer point or surface intercept
+     computations). The value is provided for informational
+     purposes only.
+
+
+     Software limitations
+     --------------------
+
+     SPICE Toolkits prior to version N0057 cannot make use of
+     trigonometric polynomial terms in the formulas for orientation of
+     the planets. The only planets for which such terms are used are
+     Jupiter and Neptune. Use of trigonometric polynomial terms for
+     natural satellites is and has been supported for all SPICE Toolkit
+     versions.
+ 
+     The second nutation precession angle (M2) for Mars is represented
+     by a quadratic polynomial in the 2006 IAU report. The SPICELIB
+     subroutine BODEUL can not handle this term (which is extremely
+     small), so we truncate the polynomial to a linear one. The 
+     resulting orientation error has a maximum magnitude of less
+     than 0.0032 degrees over the time span 1996-2015 and less than
+     0.0082 degrees over the time span 1986-2025.
+
+
+Sources
+--------------------------------------------------------
+ 
+     The sources for the constants listed in this file are:
+
+
+        [1]   Seidelmann, P.K., Archinal, B.A., A'Hearn, M.F., 
+              Conrad, A., Consolmagno, G.J., Hestroffer, D.,
+              Hilton, J.L., Krasinsky, G.A., Neumann, G.,
+              Oberst, J., Stooke, P., Tedesco, E.F., Tholen, D.J., 
+              and Thomas, P.C. "Report of the IAU/IAG Working Group 
+              on cartographic coordinates and rotational elements: 2006."
+
+        [2]   Seidelmann, P.K., Archinal, B.A., A'Hearn, M.F., 
+              Cruikshank, D.P., Hilton, J.L., Keller, H.U., Oberst, J.,
+              Simon, J.L., Stooke, P., Tholen, D.J., and Thomas, P.C.
+              "Report of the IAU/IAG Working Group on Cartographic
+              Coordinates and Rotational Elements of the Planets and
+              Satellites: 2003."
+ 
+        [3]   Nautical Almanac Office, United States Naval Observatory
+              and H.M. Nautical Almanac Office, Rutherford Appleton
+              Laboratory (2010). "The Astronomical Almanac for
+              the Year 2010," U.S. Government Printing Office,
+              Washington, D.C.: and The Stationary Office, London.
+
+        [4]   Nautical Almanac Office, United States Naval Observatory,
+              H.M. Nautical Almanac Office, Royal Greenwich
+              Observatory, Jet Propulsion Laboratory, Bureau des
+              Longitudes, and The Time Service and Astronomy
+              Departments, United States Naval Observatory (1992).
+              "Explanatory Supplement to the Astronomical Almanac," P.
+              Kenneth Seidelmann, ed. University Science Books, 20
+              Edgehill Road, Mill Valley, CA 9494.
+
+        [5]   Duxbury, Thomas C. (2001). "IAU/IAG 2000 Mars Cartographic
+              Conventions,"  presentation to the Mars Express Data
+              Archive Working Group, Dec. 14, 2001.
+
+        [6]   Russell, C.T. and Luhmann, J.G. (1990). "Earth: Magnetic 
+              Field and Magnetosphere." <http://www-ssc.igpp.ucla.
+              edu/personnel/russell/papers/earth_mag>. Originally
+              published in "Encyclopedia of Planetary Sciences," J.H.
+              Shirley and R.W. Fainbridge, eds. Chapman and Hall,
+              New York, pp 208-211.
+
+        [7]   Russell, C.T. (1971). "Geophysical Coordinate 
+              Transformations," Cosmic Electrodynamics 2  184-186.
+              NAIF document 181.0.
+     
+        [8]   ESA/ESTEC Space Environment Information System (SPENVIS)
+              (2003). Web page:  "Dipole approximations of the
+              geomagnetic field."  <http://www.spenvis.oma.be/spenvis/
+              help/background/magfield/cd.html>.
+ 
+        [9]   International Association of Geomagnetism and Aeronomy
+              and International Union of Geodesy and Geophysics (2004).
+              Web page:  "The 9th Generation International Geomagnetic
+              Reference Field." <http://www.ngdc.noaa.gov/
+              IAGA/vmod/igrf.html>.
+                             
+        [10]  Davies, M.E., Abalakin, V.K., Bursa, M., Hunt, G.E.,
+              and Lieske, J.H. (1989). "Report of the IAU/IAG/COSPAR
+              Working Group on Cartographic Coordinates and Rotational
+              Elements of the Planets and Satellites: 1988," Celestial
+              Mechanics and Dynamical Astronomy, v.46, no.2, pp.
+              187-204.
+
+         
+     Most values are from [1]. All exceptions are 
+     commented where they occur in this file. The exceptions are:
+ 
+                 
+         --   Radii for the Sun are from [3].
+             
+         --   The second nutation precession angle (M2) for Mars is
+              represented by a quadratic polynomial in the 2000
+              IAU report. The SPICELIB subroutine BODEUL can not
+              handle this term (which is extremely small), so we
+              truncate the polynomial to a linear one.
+           
+          --  Earth north geomagnetic centered dipole values are from
+              [8]. The article [6] was used to check most of 
+              these values, and the values were also re-computed from 
+              the 9th generation IGRF [9] by Nat Bachman.
+         
+          -- The Mars prime meridian offset angle is from [5].
+
+
+     "Old values" listed are from the SPICE P_constants file
+     pck00008.tpc dated September 21, 2004. Most of these values came
+     from the 2003 IAU report [2].
+ 
+ 
+ 
+ 
+Explanatory Notes
+--------------------------------------------------------
+
+     This file, which is logically part of the SPICE P-kernel, contains
+     constants used to model the orientation, size and shape of the
+     Sun, planets, natural satellites, and selected comets and
+     asteroids. The orientation models express the direction of the
+     pole and location of the prime meridian of a body as a function of
+     time. The size/shape models ("shape models" for short) represent
+     all bodies as ellipsoids, using two equatorial radii and a polar
+     radius. Spheroids and spheres are obtained when two or all three
+     radii are equal.
+
+     The SPICE Toolkit routines that use this file are documented in
+     the SPICE "Required Reading" file pck.req. They are also 
+     documented in the "PCK" SPICE tutorial, which is available on
+     the NAIF web site.
+
+File Format
+        
+     A terse description of the PCK file format is given here. See the
+     SPICE "Required Reading" files pck.req and kernel.req for a
+     detailed explanation of the SPICE text kernel file format. The
+     files pck.req and kernel.req are included in the documentation
+     provided with the SPICE Toolkit.
+
+     The file starts out with the ``ID word'' string
+
+        KPL/PCK
+
+     This string identifies the file as a text kernel containing PCK 
+     data.
+
+     This file consists of a series of comment blocks and data blocks.
+     Comment blocks, which contain free-form descriptive or explanatory
+     text, are preceded by a \begintext token. Data blocks follow a
+     \begindata token. In order to be recognized, each of these tokens
+     must be placed on a line by itself.
+
+     The portion of the file preceding the first data block is treated
+     as a comment block; it doesn't require an initial \begintext
+     token.
+
+     This file identifies data using a series of
+
+        KEYWORD = VALUE
+
+     assignments. The left hand side of each assignment is a
+     "kernel variable" name; the right hand side is an associated value
+     or list of values. The SPICE subroutine API allows SPICE routines
+     and user applications to retrieve the set of values associated
+     with each kernel variable name.
+
+     Kernel variable names are case-sensitive and are limited to
+     32 characters in length. 
+
+     Numeric values may be integer or floating point. String values
+     are normally limited to 80 characters in length; however, SPICE
+     provides a mechanism for identifying longer, "continued" strings.
+     See the SPICE routine STPOOL for details.
+
+     String values are single quoted.
+
+     When the right hand side of an assignment is a list of values,
+     the list items may be separated by commas or simply by blanks.
+     The list must be bracketed by parentheses. Example:
+
+        BODY399_RADII = ( 6378.14 6378.14 6356.75 )
+ 
+     Any blanks preceding or following keyword names, values and equal
+     signs are ignored.
+  
+     Assignments may be spread over multiple lines, for example:
+
+        BODY399_RADII = ( 6378.14 
+                          6378.14 
+                          6356.75 )
+
+     This file may contain blank lines anywhere. Non-printing
+     characters including TAB should not be present in the file: the
+     presence of such characters may cause formatting errors when the
+     file is viewed.
+
+Time systems and reference frames
+
+     The 2006 IAU/IAG Working Group Report [1] states the time scale
+     used as the independent variable for the rotation formulas is
+     Barycentric Dynamical Time (TDB) and that the epoch of variable
+     quantities is J2000 TDB (2000 Jan 1 12:00 TDB). Throughout SPICE
+     documentation and in this file, we use the names "J2000 TDB" and
+     "J2000" for this epoch. The name "J2000.0" is equivalent.
+
+     SPICE documentation refers to the time system used in this file 
+     as either "ET" or "TDB." SPICE software makes no distinction 
+     between TDB and the time system associated with the independent
+     variable of the JPL planetary ephemerides T_eph.
+ 
+     The inertial reference frame used for the rotational elements in
+     this file is identified by [1] as the ICRF (International
+     Celestial Reference Frame). 
+
+     The SPICE PCK software that reads this file uses the label "J2000"
+     to refer to the ICRF; this is actually a mislabeling which has
+     been retained in the interest of backward compatibility. Using
+     data from this file, by means of calls to the SPICE frame
+     transformation routines, will actually compute orientation
+     relative to the ICRF.
+
+     The difference between the J2000 frame and the ICRF is
+     on the order of tens of milliarcseconds and is well below the
+     accuracy level of the formulas in this file.
+
+Orientation models
+ 
+     All of the orientation models use three Euler angles to describe
+     the orientation of the coordinate axes of the "Body Equator and
+     Prime Meridian" system with respect to an inertial system. By
+     default, the inertial system is the ICRF (labeled as "J2000"), but
+     other frames can be specified in the file. See the PCK Required
+     Reading for details.
+ 
+     The first two angles, in order, are the ICRF right ascension and
+     declination (henceforth RA and DEC) of the north pole of a body as
+     a function of time. The third angle is the prime meridian location
+     (represented by "W"), which is expressed as a rotation about the
+     north pole, and is also a function of time.
+ 
+     For each body, the expressions for the north pole's right
+     ascension and declination, as well as prime meridian location, are
+     sums (as far as the models that appear in this file are concerned)
+     of quadratic polynomials and trigonometric polynomials, where the
+     independent variable is time.
+ 
+     In this file, the time arguments in expressions always refer to
+     Barycentric Dynamical Time (TDB), measured in centuries or days
+     past a reference epoch. By default, the reference epoch is the
+     J2000 epoch, which is Julian ephemeris date 2451545.0, but other
+     epochs can be specified in the file. See the PCK Required Reading
+     for details.
+
+     Orientation models for satellites and some planets (including
+     Jupiter) involve both polynomial terms and trigonometric terms.
+     The arguments of the trigonometric terms are linear polynomials.
+     In this file, we call the arguments of these trigonometric terms
+     "nutation precession angles."
+
+     Example: 2006 IAU Model for orientation of Jupiter.  Note that 
+     these values are used as an example only; see the data area below 
+     for current values.
+
+        Right ascension
+        ---------------
+ 
+        alpha   =  268.056595 - 0.006499 T        +  0.000117 sin(Ja) 
+             0                + 0.000938 sin(Jb)  +  0.001432 sin(Jc)
+                              + 0.000030 sin(Jd)  +  0.002150 sin(Je)
+
+        Declination
+        -----------
+ 
+        delta   =   64.495303 + 0.002413 T        +  0.000050 cos(Ja)
+             0                + 0.000404 cos(Jb)  +  0.000617 cos(Jc)
+                              - 0.000013 cos(Jd)  +  0.000926 cos(Je)
+
+        Prime meridian
+        --------------
+
+        W       =  284.95  + 870.5366420 d
+ 
+
+     Here
+
+        T represents centuries past J2000 ( TDB ),
+ 
+        d represents days past J2000 ( TDB ).
+
+        Ja-Je are nutation precession angles.
+
+     In this file, the polynomials' coefficients above are assigned 
+     to kernel variable names (left-hand-side symbols) as follows
+
+        BODY599_POLE_RA        = (   268.056595     -0.006499       0. )
+        BODY599_POLE_DEC       = (    64.495303      0.002413       0. )
+        BODY599_PM             = (   284.95        870.5366420      0. )
+
+     and the trigonometric polynomials' coefficients are assigned 
+     as follows
+
+        BODY599_NUT_PREC_RA  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000117
+                                                                0.000938
+                                                                0.001432
+                                                                0.000030
+                                                                0.002150 )
+
+        BODY599_NUT_PREC_DEC = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000050
+                                                                0.000404
+                                                                0.000617
+                                                               -0.000013
+                                                                0.000926 )
+
+        BODY599_NUT_PREC_PM  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0  ) 
+
+     Note the number "599"; this is the NAIF ID code for Jupiter.
+
+     In this file, the polynomial expressions for the nutation
+     precession angles are listed along with the planet's RA, DEC, and
+     prime meridian terms. Below are the 2006 IAU nutation precession
+     angles for the Jupiter system.
+
+        J1  =   73.32      +  91472.9 T
+        J2  =   24.62      +  45137.2 T
+        J3  =  283.90      +   4850.7 T
+        J4  =  355.80      +   1191.3 T
+        J5  =  119.90      +    262.1 T
+        J6  =  229.80      +     64.3 T
+        J7  =  352.25      +   2382.6 T
+        J8  =  113.35      +   6070.0 T
+
+        J9  =  146.64      + 182945.8 T
+        J10 =   49.24      +  90274.4 T 
+
+        Ja  =   99.360714  +   4850.4046 T
+        Jb  =  175.895369  +   1191.9605 T
+        Jc  =  300.323162  +    262.5475 T
+        Jd  =  114.012305  +   6070.2476 T
+        Je  =   49.511251  +     64.3000 T
+
+     Here
+
+        T represents centuries past J2000 ( TDB )
+
+        J1-J10 and Ja-Je are the nutation precession angles. The angles
+        J9 and J10 are equal to 2*J1 and 2*J2, respectively.
+ 
+        Angles J9 and J10 are not present in [1]; they have been added
+        to fit the terms 2*J1 and 2*J2, which appear in the orientation
+        models of several satellites, into a form that can be accepted
+        by the PCK system.
+
+     The assignment of the nutation precession angles for the
+     Jupiter system is as follows:
+ 
+        BODY5_NUT_PREC_ANGLES  = (    73.32      91472.9
+                                      24.62      45137.2
+                                     283.90       4850.7
+                                     355.80       1191.3
+                                     119.90        262.1
+                                     229.80         64.3
+                                     352.25       2382.6
+                                     113.35       6070.0   
+                                     146.64     182945.8
+                                      49.24      90274.4  
+                                      99.360714   4850.4046
+                                     175.895369   1191.9605
+                                     300.323162    262.5475
+                                     114.012305   6070.2476
+                                      49.511251     64.3000  )
+
+     You'll see an additional symbol grouped with the ones listed
+     above; it is
+ 
+        BODY599_LONG_AXIS
+ 
+     This term is zero for all bodies except Mars. It represents the
+     angular offset between the meridian containing the longest axis of
+     the triaxial ellipsoid used to model a body's surface and the
+     prime meridian of the body.
+
+     The pattern of the formulas for satellite orientation is similar
+     to that for Jupiter. Example: 2006 IAU values for Io. Again, these
+     values are used as an example only; see the data area below for
+     current values.
+ 
+        Right ascension
+        ---------------
+
+        alpha  = 268.05  -  0.009 T  + 0.094 sin(J3)  +  0.024 sin(J4)
+             0  
+
+        Declination
+        -----------
+
+        delta  =  64.50  +  0.003 T  + 0.040 cos(J3)  +  0.011 cos(J4)
+             0           
+                          
+        Prime meridian
+        --------------
+
+        W      = 200.39  +  203.4889538 d  -  0.085 sin(J3)  -  0.022 sin(J4)
+
+ 
+        d represents days past J2000.
+ 
+        J3 and J4 are nutation precession angles.
+ 
+     The polynomial terms are assigned to symbols by the statements
+ 
+        BODY501_POLE_RA       = (  268.05          -0.009      0. )
+        BODY501_POLE_DEC      = (   64.50           0.003      0. )
+        BODY501_PM            = (  200.39         203.4889538  0. )
+ 
+     The coefficients of the trigonometric terms are assigned to symbols by
+     the statements
+
+        BODY501_NUT_PREC_RA   = (    0.   0.     0.094    0.024   )
+        BODY501_NUT_PREC_DEC  = (    0.   0.     0.040    0.011   )
+        BODY501_NUT_PREC_PM   = (    0.   0.    -0.085   -0.022   )
+
+     501 is the NAIF ID code for Io.
+ 
+     SPICE software expects the models for satellite orientation to
+     follow the form of the model shown here: the polynomial portions of the
+     RA, DEC, and W expressions are expected to be quadratic, the 
+     trigonometric terms for RA and W (satellite prime meridian) are expected 
+     to be linear combinations of sines of nutation precession angles, the 
+     trigonometric terms for DEC are expected to be linear combinations of 
+     cosines of nutation precession angles, and the polynomials for the 
+     nutation precession angles themselves are expected to be linear.
+ 
+     Eventually, the software will handle more complex expressions, we
+     expect.
+ 
+ 
+Shape models
+ 
+     There is only one kind of shape model supported by the SPICE Toolkit
+     software at present: the triaxial ellipsoid. The 2006 IAU report does
+     not use any other models, except in the case of Mars, where 
+     separate values are given for the north and south polar radii.
+ 
+     For each body, three radii are listed:  The first number is
+     the largest equatorial radius (the length of the semi-axis
+     containing the prime meridian), the second number is the smaller
+     equatorial radius, and the third is the polar radius.
+ 
+     Example: Radii of the Earth.
+ 
+        BODY399_RADII     = (     6378.14    6378.14      6356.75   )
+ 
+ 
+Body Numbers and Names
+--------------------------------------------------------
+ 
+ 
+        1  Mercury barycenter
+        2  Venus barycenter
+        3  Earth barycenter
+        4  Mars barycenter
+        5  Jupiter barycenter
+        6  Saturn barycenter
+        7  Uranus barycenter
+        8  Neptune barycenter
+        9  Pluto barycenter
+        10 Sun
+
+ 
+        199 Mercury
+ 
+ 
+        299 Venus
+ 
+ 
+        399 Earth
+ 
+        301 Moon
+ 
+ 
+        499 Mars
+ 
+        401 Phobos      402 Deimos
+ 
+ 
+        599 Jupiter
+ 
+        501 Io          502 Europa      503 Ganymede    504 Callisto
+        505 Amalthea    506 Himalia     507 Elara       508 Pasiphae
+        509 Sinope      510 Lysithea    511 Carme       512 Ananke
+        513 Leda        514 Thebe       515 Adrastea    516 Metis
+ 
+ 
+        699 Saturn
+ 
+        601 Mimas       602 Enceladus   603 Tethys      604 Dione
+        605 Rhea        606 Titan       607 Hyperion    608 Iapetus
+        609 Phoebe      610 Janus       611 Epimetheus  612 Helene
+        613 Telesto     614 Calypso     615 Atlas       616 Prometheus
+        617 Pandora     618 Pan
+ 
+ 
+        799 Uranus
+ 
+        701 Ariel       702 Umbriel     703 Titania     704 Oberon
+        705 Miranda     706 Cordelia    707 Ophelia     708 Bianca
+        709 Cressida    710 Desdemona   711 Juliet      712 Portia
+        713 Rosalind    714 Belinda     715 Puck
+ 
+ 
+        899 Neptune
+ 
+        801 Triton      802 Nereid      803 Naiad       804 Thalassa
+        805 Despina     806 Galatea     807 Larissa     808 Proteus
+ 
+ 
+        999 Pluto
+ 
+        901 Charon
+ 
+ 
+        1000005 Comet 19P/Borrelly
+        1000036 Comet Halley
+        1000093 Comet 9P/Tempel 1
+        1000107 Comet 81P/Wild 2
+
+        2000001 Asteroid Ceres
+        2000004 Asteroid Vesta
+        2000216 Asteroid Kleopatra
+        2000253 Asteroid Mathilde
+        2000433 Asteroid Eros
+        2004179 Asteroid Toutatis
+        2025143 Asteroid Itokawa
+        2431010 Asteroid Ida
+        9511010 Asteroid Gaspra
+        
+ 
+Orientation Constants for the Sun and Planets
+--------------------------------------------------------
+ 
+ 
+Sun
+ 
+     Old values:
+
+        Values are from the 2003 IAU report.
+
+  
+        body10_pole_ra         = (  286.13       0.          0. )
+        body10_pole_dec        = (   63.87       0.          0. )
+        body10_pm              = (   84.10      14.18440     0. )
+        body10_long_axis       = (    0.                        )
+
+     Current values:
+ 
+        \begindata
+ 
+        BODY10_POLE_RA         = (  286.13       0.          0. )
+        BODY10_POLE_DEC        = (   63.87       0.          0. )
+        BODY10_PM              = (   84.176     14.18440     0. )
+        BODY10_LONG_AXIS       = (    0.                        )
+
+        \begintext
+ 
+Mercury
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+
+
+     Current values:
+  
+        \begindata
+
+        BODY199_POLE_RA          = (  281.01     -0.033      0. )
+        BODY199_POLE_DEC         = (   61.45     -0.005      0. )
+        BODY199_PM               = (  329.548     6.1385025  0. )
+ 
+        BODY199_LONG_AXIS        = (    0.                        )
+ 
+        \begintext
+ 
+  
+Venus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY299_POLE_RA          = (  272.76       0.          0. )
+        BODY299_POLE_DEC         = (   67.16       0.          0. )
+        BODY299_PM               = (  160.20      -1.4813688   0. )
+ 
+        BODY299_LONG_AXIS        = (    0.                        )
+ 
+        \begintext
+
+
+Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 report.
+ 
+ 
+     Current values:
+ 
+        \begindata 
+ 
+        BODY399_POLE_RA        = (    0.      -0.641         0. )
+        BODY399_POLE_DEC       = (   90.      -0.557         0. )
+        BODY399_PM             = (  190.147  360.9856235     0. )
+        BODY399_LONG_AXIS      = (    0.                        )
+
+        \begintext
+
+
+        Nutation precession angles for the Earth-Moon system:
+
+           The linear coefficients have been scaled up from degrees/day
+           to degrees/century, because the SPICELIB PCK reader expects
+           these units.  The original constants were:
+        
+                                    125.045D0   -0.0529921D0
+                                    250.089D0   -0.1059842D0
+                                    260.008D0   13.0120009D0
+                                    176.625D0   13.3407154D0
+                                    357.529D0    0.9856003D0
+                                    311.589D0   26.4057084D0
+                                    134.963D0   13.0649930D0
+                                    276.617D0    0.3287146D0
+                                     34.226D0    1.7484877D0
+                                     15.134D0   -0.1589763D0
+                                    119.743D0    0.0036096D0
+                                    239.961D0    0.1643573D0
+                                     25.053D0   12.9590088D0 
+
+
+        \begindata
+
+       
+        BODY3_NUT_PREC_ANGLES  = (  125.045         -1935.5364525000
+                                    250.089         -3871.0729050000
+                                    260.008        475263.3328725000  
+                                    176.625        487269.6299850000
+                                    357.529         35999.0509575000
+                                    311.589        964468.4993100000
+                                    134.963        477198.8693250000
+                                    276.617         12006.3007650000
+                                     34.226         63863.5132425000 
+                                     15.134         -5806.6093575000
+                                    119.743           131.8406400000
+                                    239.961          6003.1503825000 
+                                     25.053        473327.7964200000 )
+
+
+        \begintext
+ 
+
+     Earth north geomagnetic centered dipole:
+
+        Old values:
+
+           Values are from [7].  Note the year of publication was 1971.
+
+           body399_mag_north_pole_lon  =  ( -69.761 )
+           body399_mag_north_pole_lat  =  (  78.565 )
+
+
+        Current values:
+
+           The north dipole location is time-varying.  The values shown
+           below, taken from [8], represent a discrete sampling of the
+           north dipole location from 1945 to 2000. The terms DGRF and
+           IGRF refer to, respectively, "Definitive Geomagnetic
+           Reference Field" and "International Geomagnetic Reference
+           Field."  See references [6], [8], and [9] for details.
+
+           Coordinates are planetocentric. 
+
+             Data source    Lat      Lon
+             -----------   -----    ------
+              DGRF 1945    78.47    291.47
+              DGRF 1950    78.47    291.15
+              DGRF 1955    78.46    290.84
+              DGRF 1960    78.51    290.53
+              DGRF 1965    78.53    290.15
+              DGRF 1970    78.59    289.82
+              DGRF 1975    78.69    289.53
+              DGRF 1980    78.81    289.24 
+              DGRF 1985    78.97    289.10
+              DGRF 1990    79.13    288.89
+              IGRF 1995    79.30    288.59
+              IGRF 2000    79.54    288.43      
+
+
+        Values are given for the epoch 2000 and are from the final row
+        of the above table, which is from [8]. As shown by the table
+        these values constitute a low-accuracy approximation for epochs
+        not close to 2000.
+
+        \begindata
+       
+        BODY399_N_GEOMAG_CTR_DIPOLE_LON  =  ( 288.43 )
+        BODY399_N_GEOMAG_CTR_DIPOLE_LAT  =  (  79.54 )
+
+        \begintext
+
+ 
+Mars
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+   
+     Current values:
+ 
+        \begindata
+ 
+        BODY499_POLE_RA          = (  317.68143   -0.1061      0.  )
+        BODY499_POLE_DEC         = (   52.88650   -0.0609      0.  )
+        BODY499_PM               = (  176.630    350.89198226  0.  )
+
+        \begintext
+ 
+        Source [5] specifies the following value for the lambda_a term
+        (BODY499_LONG_AXIS ) for Mars. This term is the POSITIVE EAST
+        LONGITUDE, measured from the prime meridian, of the meridian
+        containing the longest axis of the reference ellipsoid.
+        (CAUTION: previous values were POSITIVE WEST.)
+
+           body499_long_axis        = (  252.  )
+ 
+        We list this lambda_a value for completeness. The IAU report
+        [1] gives equal values for both equatorial radii, so the
+        lambda_a offset does not apply to the IAU model.
+ 
+        The 2003 IAU report defines M2, the second nutation precession angle,
+        by:
+ 
+                                                2
+           192.93  +  1128.4096700 d  +  8.864 T
+ 
+        We truncate the M2 series to a linear expression, because the PCK
+        software cannot handle the quadratic term.
+ 
+        Again, the linear terms are scaled by 36525.0:
+ 
+            -0.4357640000000000       -->     -15916.28010000000
+          1128.409670000000           -->   41215163.19675000
+            -1.8151000000000000E-02   -->       -662.9652750000000
+ 
+        We also introduce a fourth nutation precession angle, which
+        is the pi/2-complement of the third angle.  This angle is used
+        in computing the prime meridian location for Deimos.  See the
+        discussion of this angle below in the section containing orientation
+        constants for Deimos.
+ 
+        \begindata
+
+        BODY4_NUT_PREC_ANGLES  = (  169.51     -15916.2801
+                                    192.93   41215163.19675
+                                     53.47       -662.965275
+                                     36.53        662.965275  )
+ 
+        \begintext
+ 
+ 
+Jupiter
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report.
+
+
+           body599_pole_ra        = (   268.05      -0.009       0. )
+           body599_pole_dec       = (    64.49       0.003       0. )
+           body599_pm             = (   284.95     870.5366420   0. )
+           body599_long_axis      = (     0.                        )
+
+           body5_nut_prec_angles  = (    73.32   91472.9
+                                         24.62   45137.2
+                                        283.90    4850.7
+                                        355.80    1191.3
+                                        119.90     262.1
+                                        229.80      64.3
+                                        352.35    2382.6
+                                        113.35    6070.0   
+                                        146.64  182945.8
+                                         49.24   90274.4  )
+ 
+
+                   
+     Current values:
+ 
+        The number of nutation precession angles is 15. The ninth and
+        tenth are twice the first and second, respectively. The
+        eleventh through fifteenth correspond to angles JA-JE in
+        the 2006 IAU report; angles JA-JE were not used prior to that
+        report.
+
+        \begindata
+ 
+ 
+        BODY599_POLE_RA        = (   268.056595     -0.006499       0. )
+        BODY599_POLE_DEC       = (    64.495303      0.002413       0. )
+        BODY599_PM             = (   284.95        870.5366420      0. )
+        BODY599_LONG_AXIS      = (     0.                        )
+ 
+        BODY599_NUT_PREC_RA  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000117
+                                                                0.000938
+                                                                0.001432
+                                                                0.000030
+                                                                0.002150 )
+
+        BODY599_NUT_PREC_DEC = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000050
+                                                                0.000404
+                                                                0.000617
+                                                               -0.000013
+                                                                0.000926 )
+
+        BODY599_NUT_PREC_PM  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0  ) 
+
+
+        BODY5_NUT_PREC_ANGLES  = (    73.32      91472.9
+                                      24.62      45137.2
+                                     283.90       4850.7
+                                     355.80       1191.3
+                                     119.90        262.1
+                                     229.80         64.3
+                                     352.25       2382.6
+                                     113.35       6070.0   
+                                     146.64     182945.8
+                                      49.24      90274.4  
+                                      99.360714   4850.4046
+                                     175.895369   1191.9605
+                                     300.323162    262.5475
+                                     114.012305   6070.2476
+                                      49.511251     64.3000  )
+        \begintext
+ 
+ 
+Saturn
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+
+     Current values:
+ 
+        \begindata
+
+        BODY699_POLE_RA        = (    40.589    -0.036      0.  )
+        BODY699_POLE_DEC       = (    83.537    -0.004      0.  )
+        BODY699_PM             = (    38.90    810.7939024  0.  )
+        BODY699_LONG_AXIS      = (     0.                       )
+ 
+        \begintext
+ 
+        The first seven angles given here are the angles S1 
+        through S7 from the 2000 report; the eighth and
+        ninth angles are 2*S1 and 2*S2, respectively.
+ 
+ 
+        \begindata
+
+        BODY6_NUT_PREC_ANGLES  = (  353.32   75706.7
+                                     28.72   75706.7  
+                                    177.40  -36505.5 
+                                    300.00   -7225.9 
+                                    316.45     506.2
+                                    345.20   -1016.3  
+                                     29.80     -52.1
+                                    706.64  151413.4
+                                     57.44  151413.4  )
+        \begintext
+ 
+ 
+Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY799_POLE_RA        = (  257.311     0.         0.  )
+        BODY799_POLE_DEC       = (  -15.175     0.         0.  )
+        BODY799_PM             = (  203.81   -501.1600928  0.  )
+        BODY799_LONG_AXIS      = (    0.                       )
+ 
+        \begintext
+        
+        The first 16 angles given here are the angles U1 
+        through U16 from the 2000 report; the 17th and
+        18th angles are 2*U11 and 2*U12, respectively.
+        
+        \begindata
+         
+        BODY7_NUT_PREC_ANGLES  = (  115.75   54991.87
+                                    141.69   41887.66
+                                    135.03   29927.35
+                                     61.77   25733.59  
+                                    249.32   24471.46
+                                     43.86   22278.41 
+                                     77.66   20289.42  
+                                    157.36   16652.76  
+                                    101.81   12872.63   
+                                    138.64    8061.81
+                                    102.23   -2024.22 
+                                    316.41    2863.96  
+                                    304.01     -51.94  
+                                    308.71     -93.17 
+                                    340.82     -75.32 
+                                    259.14    -504.81 
+                                    204.46   -4048.44
+                                    632.82    5727.92     )
+                                    
+        \begintext
+ 
+ 
+ 
+Neptune
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+
+        \begindata        
+ 
+           BODY899_POLE_RA        = (  299.36     0.         0. )
+           BODY899_POLE_DEC       = (   43.46     0.         0. )
+           BODY899_PM             = (  253.18   536.3128492  0. )
+           BODY899_LONG_AXIS      = (    0.                     )
+
+
+           BODY899_NUT_PREC_RA    = (  0.70 0. 0. 0. 0. 0. 0. 0. ) 
+           BODY899_NUT_PREC_DEC   = ( -0.51 0. 0. 0. 0. 0. 0. 0. )
+           BODY899_NUT_PREC_PM    = ( -0.48 0. 0. 0. 0. 0. 0. 0. )
+
+        \begintext
+ 
+           The 2000 report defines the nutation precession angles
+ 
+              N, N1, N2, ... , N7
+ 
+           and also uses the multiples of N1 and N7
+ 
+              2*N1
+ 
+           and
+ 
+              2*N7, 3*N7, ..., 9*N7
+ 
+           In this file, we treat the angles and their multiples as
+           separate angles.  In the kernel variable
+ 
+              BODY8_NUT_PREC_ANGLES
+ 
+           the order of the angles is
+ 
+              N, N1, N2, ... , N7, 2*N1, 2*N7, 3*N7, ..., 9*N7
+ 
+           Each angle is defined by a linear polynomial, so two
+           consecutive array elements are allocated for each
+           angle.  The first term of each pair is the constant term,
+           the second is the linear term.
+ 
+        \begindata 
+
+              BODY8_NUT_PREC_ANGLES = (   357.85         52.316
+                                          323.92      62606.6
+                                          220.51      55064.2 
+                                          354.27      46564.5
+                                           75.31      26109.4 
+                                           35.36      14325.4
+                                          142.61       2824.6  
+                                          177.85         52.316 
+                                          647.840    125213.200
+                                          355.700       104.632
+                                          533.550       156.948
+                                          711.400       209.264
+                                          889.250       261.580
+                                         1067.100       313.896
+                                         1244.950       366.212
+                                         1422.800       418.528
+                                         1600.650       470.844   )
+                                         
+        \begintext
+ 
+ 
+ 
+Pluto
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report. 
+ 
+        BODY999_POLE_RA        = (  313.02    0.         0.   )
+        BODY999_POLE_DEC       = (    9.09    0.         0.   )
+        BODY999_PM             = (  236.77  -56.3623195  0.   )
+        BODY999_LONG_AXIS      = (    0.                      )
+
+
+     Current values:
+ 
+        \begindata
+ 
+        BODY999_POLE_RA        = (  312.993   0.          0. )
+        BODY999_POLE_DEC       = (    6.163   0.          0. )
+        BODY999_PM             = (  237.305  -56.3625225  0. )
+        BODY999_LONG_AXIS      = (    0.                     )
+
+        \begintext
+ 
+ 
+ 
+ 
+Orientation constants for the satellites
+--------------------------------------------------------
+ 
+ 
+Satellites of Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+
+ 
+     New values:
+ 
+        \begindata
+ 
+ 
+
+
+
+        BODY301_POLE_RA      = (  269.9949        0.0031        0.      )
+        BODY301_POLE_DEC     = (   66.5392        0.0130        0.      )
+        BODY301_PM           = (   38.3213       13.17635815   -1.4D-12 )
+        BODY301_LONG_AXIS    = (    0.                                  )
+   
+        BODY301_NUT_PREC_RA  = (   -3.8787   -0.1204   0.0700   -0.0172
+                                    0.0       0.0072   0.0       0.0
+                                    0.0      -0.0052   0.0       0.0
+                                    0.0043                              )
+        
+        BODY301_NUT_PREC_DEC = (   1.5419     0.0239  -0.0278    0.0068
+                                   0.0       -0.0029   0.0009    0.0
+                                   0.0        0.0008   0.0       0.0     
+                                  -0.0009                               )
+        
+        BODY301_NUT_PREC_PM  = (   3.5610     0.1208  -0.0642    0.0158
+                                   0.0252    -0.0066  -0.0047   -0.0046
+                                   0.0028     0.0052   0.0040    0.0019
+                                  -0.0044                               )
+        \begintext
+ 
+
+ 
+Satellites of Mars
+ 
+ 
+     Phobos
+ 
+          Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+          Current values:
+ 
+            The quadratic prime meridian term is scaled by 1/36525**2:
+ 
+               8.864000000000000   --->   6.6443009930565219E-09
+ 
+        \begindata
+ 
+          BODY401_POLE_RA  = ( 317.68    -0.108     0.                     )
+          BODY401_POLE_DEC = (  52.90    -0.061     0.                     )
+          BODY401_PM       = (  35.06  1128.8445850 6.6443009930565219E-09 )
+                                       
+          BODY401_LONG_AXIS     = (    0.   )
+ 
+          BODY401_NUT_PREC_RA   = (   1.79    0.    0.   0. )
+          BODY401_NUT_PREC_DEC  = (  -1.08    0.    0.   0. )
+          BODY401_NUT_PREC_PM   = (  -1.42   -0.78  0.   0. )
+
+
+        \begintext
+ 
+ 
+     Deimos
+ 
+        Old values:
+ 
+           Values are unchanged in the 2006 IAU report.
+ 
+ 
+        New values:
+ 
+           The Deimos prime meridian expression is:
+ 
+ 
+                                                     2
+              W = 79.41  +  285.1618970 d  -  0.520 T  -  2.58 sin M
+                                                                    3
+ 
+                                                       +  0.19 cos M .
+                                                                    3
+ 
+ 
+           At the present time, the PCK kernel software (the routine
+           BODEUL in particular) cannot handle the cosine term directly,
+           but we can represent it as
+ 
+              0.19 sin M
+                        4
+ 
+           where
+ 
+              M   =  90.D0 - M
+               4              3
+ 
+           Therefore, the nutation precession angle assignments for Phobos
+           and Deimos contain four coefficients rather than three.
+ 
+           The quadratic prime meridian term is scaled by 1/36525**2:
+ 
+              -0.5200000000000000  --->   -3.8978300049519307E-10
+ 
+        \begindata
+ 
+           BODY402_POLE_RA       = (  316.65     -0.108       0.           )
+           BODY402_POLE_DEC      = (   53.52     -0.061       0.           )
+           BODY402_PM            = (   79.41    285.1618970  -3.897830D-10 )
+           BODY402_LONG_AXIS     = (    0.                                 )
+ 
+           BODY402_NUT_PREC_RA   = (    0.   0.   2.98    0.   )
+           BODY402_NUT_PREC_DEC  = (    0.   0.  -1.78    0.   )
+           BODY402_NUT_PREC_PM   = (    0.   0.  -2.58    0.19 )
+
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Jupiter
+ 
+ 
+     Io
+ 
+          Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+          Current values:
+         
+        \begindata
+ 
+        BODY501_POLE_RA       = (  268.05          -0.009      0. )
+        BODY501_POLE_DEC      = (   64.50           0.003      0. )
+        BODY501_PM            = (  200.39         203.4889538  0. )
+        BODY501_LONG_AXIS     = (    0.                           )
+ 
+        BODY501_NUT_PREC_RA   = (    0.   0.     0.094    0.024   )
+        BODY501_NUT_PREC_DEC  = (    0.   0.     0.040    0.011   )
+        BODY501_NUT_PREC_PM   = (    0.   0.    -0.085   -0.022   )
+
+        \begintext
+ 
+ 
+ 
+     Europa
+ 
+ 
+        Old values:
+
+           Values are from the 2003 IAU report.
+
+
+        body502_pole_ra       = (  268.08          -0.009      0.   )
+        body502_pole_dec      = (   64.51           0.003      0.   )
+        body502_pm            = (   35.67         101.3747235  0.   )
+        body502_long_axis     = (    0.                             )
+ 
+        body502_nut_prec_ra   = ( 0. 0. 0.   1.086   0.060   0.015   0.009 )
+        body502_nut_prec_dec  = ( 0. 0. 0.   0.468   0.026   0.007   0.002 )
+        body502_nut_prec_pm   = ( 0. 0. 0.  -0.980  -0.054  -0.014  -0.008 )
+        
+
+        Current values:
+ 
+        \begindata 
+ 
+        BODY502_POLE_RA       = (  268.08          -0.009      0.   )
+        BODY502_POLE_DEC      = (   64.51           0.003      0.   )
+        BODY502_PM            = (   36.022        101.3747235  0.   )
+        BODY502_LONG_AXIS     = (    0.                             )
+ 
+        BODY502_NUT_PREC_RA   = ( 0. 0. 0.   1.086   0.060   0.015   0.009 )
+        BODY502_NUT_PREC_DEC  = ( 0. 0. 0.   0.468   0.026   0.007   0.002 )
+        BODY502_NUT_PREC_PM   = ( 0. 0. 0.  -0.980  -0.054  -0.014  -0.008 )
+ 
+        \begintext
+ 
+ 
+     Ganymede
+ 
+        Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+
+        Current values:
+        
+        \begindata
+    
+        BODY503_POLE_RA       = (  268.20         -0.009       0.  )
+        BODY503_POLE_DEC      = (   64.57          0.003       0.  )
+        BODY503_PM            = (   44.064        50.3176081   0.  )
+        BODY503_LONG_AXIS     = (    0.                            )
+
+        BODY503_NUT_PREC_RA   = ( 0. 0. 0.  -0.037   0.431   0.091   )
+        BODY503_NUT_PREC_DEC  = ( 0. 0. 0.  -0.016   0.186   0.039   )
+        BODY503_NUT_PREC_PM   = ( 0. 0. 0.   0.033  -0.389  -0.082   )
+ 
+        \begintext
+ 
+ 
+     Callisto
+ 
+        Old values:
+
+             Values are unchanged in the 2006 IAU report.
+        
+        
+        Current values:
+        
+        
+        \begindata
+  
+        BODY504_POLE_RA       = (   268.72    -0.009       0.  )
+        BODY504_POLE_DEC      = (    64.83     0.003       0.  )
+        BODY504_PM            = (   259.51    21.5710715   0.  )
+        BODY504_LONG_AXIS     = (     0.                       )
+ 
+        BODY504_NUT_PREC_RA   = ( 0. 0. 0. 0.  -0.068   0.590  0.   0.010 )
+        BODY504_NUT_PREC_DEC  = ( 0. 0. 0. 0.  -0.029   0.254  0.  -0.004 )
+        BODY504_NUT_PREC_PM   = ( 0. 0. 0. 0.   0.061  -0.533  0.  -0.009 )
+ 
+        \begintext
+ 
+ 
+     Amalthea
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.        
+        
+        Current values:
+         
+        \begindata
+ 
+        BODY505_POLE_RA       = (   268.05    -0.009      0.  )
+        BODY505_POLE_DEC      = (    64.49     0.003      0.  )
+        BODY505_PM            = (   231.67   722.6314560  0.  )
+        BODY505_LONG_AXIS     = (     0.                      )
+ 
+        BODY505_NUT_PREC_RA  = ( -0.84  0. 0. 0. 0. 0. 0. 0.   0.01  0. )
+        BODY505_NUT_PREC_DEC = ( -0.36  0. 0. 0. 0. 0. 0. 0.   0.    0. )
+        BODY505_NUT_PREC_PM  = (  0.76  0. 0. 0. 0. 0. 0. 0.  -0.01  0. )
+ 
+        \begintext
+ 
+ 
+     Thebe
+ 
+ 
+        Old values:
+                
+           Values are unchanged in the 2006 IAU report.                
+          
+        Current values:
+        
+        \begindata
+ 
+        BODY514_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY514_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY514_PM            = (    8.56    533.7004100   0.  )
+        BODY514_LONG_AXIS     = (    0.                        )
+ 
+        BODY514_NUT_PREC_RA  = ( 0.  -2.11  0. 0. 0. 0. 0. 0. 0.  0.04 )
+        BODY514_NUT_PREC_DEC = ( 0.  -0.91  0. 0. 0. 0. 0. 0. 0.  0.01 )
+        BODY514_NUT_PREC_PM  = ( 0.   1.91  0. 0. 0. 0. 0. 0. 0. -0.04 )
+ 
+        \begintext
+ 
+ 
+     Adrastea
+ 
+        Old values:
+                
+           Values are unchanged in the 2006 IAU report.                
+        
+        Current values:
+        
+        \begindata
+ 
+ 
+ 
+        BODY515_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY515_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY515_PM            = (   33.29   1206.9986602   0.  )
+        BODY515_LONG_AXIS     = (    0.                        )
+
+        \begintext
+ 
+ 
+     Metis
+  
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+              
+        Current values:
+           
+        \begindata
+
+        BODY516_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY516_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY516_PM            = (  346.09   1221.2547301   0.  )
+        BODY516_LONG_AXIS     = (    0.                        )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Saturn
+      
+     
+     Mimas
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+               
+        Current values:
+ 
+        \begindata
+  
+           BODY601_POLE_RA       = (   40.66     -0.036      0.  )
+           BODY601_POLE_DEC      = (   83.52     -0.004      0.  )
+           BODY601_PM            = (  337.46    381.9945550  0.  )
+           BODY601_LONG_AXIS     = (     0.                      )
+ 
+           BODY601_NUT_PREC_RA   = ( 0. 0.   13.56  0.    0.    0. 0. 0. 0. )
+           BODY601_NUT_PREC_DEC  = ( 0. 0.   -1.53  0.    0.    0. 0. 0. 0. )
+           BODY601_NUT_PREC_PM   = ( 0. 0.  -13.48  0.  -44.85  0. 0. 0. 0. )
+
+        \begintext
+ 
+ 
+     Enceladus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+               
+        Current values:
+ 
+        \begindata
+ 
+           BODY602_POLE_RA       = (   40.66    -0.036       0. )
+           BODY602_POLE_DEC      = (   83.52    -0.004       0. )
+           BODY602_PM            = (    2.82   262.7318996   0. )
+           BODY602_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+     Tethys
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+ 
+           BODY603_POLE_RA       = (   40.66    -0.036       0. )
+           BODY603_POLE_DEC      = (   83.52    -0.004       0. )
+           BODY603_PM            = (   10.45   190.6979085   0. )
+           BODY603_LONG_AXIS     = (    0.                      )
+ 
+           BODY603_NUT_PREC_RA   = ( 0. 0. 0.   9.66   0.    0.  0.  0.  0. )
+           BODY603_NUT_PREC_DEC  = ( 0. 0. 0.  -1.09   0.    0.  0.  0.  0. )
+           BODY603_NUT_PREC_PM   = ( 0. 0. 0.  -9.60   2.23  0.  0.  0.  0. )
+
+        \begintext
+ 
+ 
+     Dione
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+   
+           BODY604_POLE_RA       = (  40.66      -0.036      0.  )
+           BODY604_POLE_DEC      = (  83.52      -0.004      0.  )
+           BODY604_PM            = (  357.00    131.5349316  0.  )
+           BODY604_LONG_AXIS     = (    0.                       )
+
+        \begintext
+ 
+ 
+ 
+     Rhea
+     
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+   
+           BODY605_POLE_RA       = (   40.38   -0.036       0. )
+           BODY605_POLE_DEC      = (   83.55   -0.004       0. )
+           BODY605_PM            = (  235.16   79.6900478   0. )
+           BODY605_LONG_AXIS     = (    0.                     )
+ 
+           BODY605_NUT_PREC_RA   = ( 0. 0. 0. 0. 0.   3.10   0. 0. 0. )
+           BODY605_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0.  -0.35   0. 0. 0. )
+           BODY605_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  -3.08   0. 0. 0. )
+ 
+        \begintext
+ 
+ 
+ 
+     Titan
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY606_POLE_RA       = (    36.41   -0.036      0. )
+           BODY606_POLE_DEC      = (    83.94   -0.004      0. )
+           BODY606_PM            = (   189.64   22.5769768  0. )
+           BODY606_LONG_AXIS     = (     0.                    )
+ 
+           BODY606_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 0.  2.66  0. 0 )
+           BODY606_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 0. -0.30  0. 0 )
+           BODY606_NUT_PREC_PM   = ( 0. 0. 0. 0. 0. 0. -2.64  0. 0 )
+
+        \begintext
+ 
+ 
+ 
+     Hyperion
+ 
+         The IAU report does not give an orientation model for Hyperion.
+         Hyperion's rotation is in chaotic and is not predictable for
+         long periods.
+
+ 
+     Iapetus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY608_POLE_RA       = (   318.16  -3.949      0.  )
+           BODY608_POLE_DEC      = (    75.03  -1.143      0.  )
+           BODY608_PM            = (   350.20   4.5379572  0.  )
+           BODY608_LONG_AXIS     = (     0.                    )
+
+        \begintext
+ 
+ 
+ 
+     Phoebe
+ 
+
+        Old values:
+        
+           Values are from the 2003 IAU report. 
+  
+           body609_pole_ra       = ( 355.00       0.         0.  )
+           body609_pole_dec      = (  68.70       0.         0.  )
+           body609_pm            = ( 304.70     930.8338720  0.  )
+           body609_long_axis     = (    0.                       )
+
+        Current values:
+ 
+        \begindata 
+  
+           BODY609_POLE_RA       = ( 356.90       0.         0.  )
+           BODY609_POLE_DEC      = (  77.80       0.         0.  )
+           BODY609_PM            = ( 178.58     931.639      0.  )
+           BODY609_LONG_AXIS     = (    0.                       )
+
+        \begintext
+ 
+ 
+     Janus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY610_POLE_RA       = (  40.58    -0.036       0. )
+           BODY610_POLE_DEC      = (  83.52    -0.004       0. )
+           BODY610_PM            = (  58.83   518.2359876   0. )
+           BODY610_LONG_AXIS     = (   0.                      )
+ 
+           BODY610_NUT_PREC_RA   = ( 0. -1.623  0. 0. 0. 0. 0. 0.  0.023 )
+           BODY610_NUT_PREC_DEC  = ( 0. -0.183  0. 0. 0. 0. 0. 0.  0.001 )
+           BODY610_NUT_PREC_PM   = ( 0.  1.613  0. 0. 0. 0. 0. 0. -0.023 )
+ 
+        \begintext
+ 
+ 
+ 
+     Epimetheus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+         
+        Current values:
+ 
+        \begindata 
+  
+           BODY611_POLE_RA       = (  40.58    -0.036        0. )
+           BODY611_POLE_DEC      = (  83.52    -0.004        0. )
+           BODY611_PM            = ( 293.87   518.4907239    0. )
+           BODY611_LONG_AXIS     = (   0.                       )
+ 
+           BODY611_NUT_PREC_RA   = ( -3.153   0. 0. 0. 0. 0. 0.   0.086  0. )
+           BODY611_NUT_PREC_DEC  = ( -0.356   0. 0. 0. 0. 0. 0.   0.005  0. )
+           BODY611_NUT_PREC_PM   = (  3.133   0. 0. 0. 0. 0. 0.  -0.086  0. )
+
+        \begintext
+ 
+ 
+ 
+     Helene
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY612_POLE_RA       = (  40.85     -0.036        0. )
+           BODY612_POLE_DEC      = (  83.34     -0.004        0. )
+           BODY612_PM            = ( 245.12    131.6174056    0. )
+           BODY612_LONG_AXIS     = (   0.                        )
+
+        \begintext
+ 
+ 
+ 
+     Telesto
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY613_POLE_RA       = ( 50.51    -0.036      0.  )
+           BODY613_POLE_DEC      = ( 84.06    -0.004      0.  )
+           BODY613_PM            = ( 56.88   190.6979332  0.  )
+           BODY613_LONG_AXIS     = (  0.                      )
+
+        \begintext
+
+ 
+ 
+     Calypso
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY614_POLE_RA       = (   36.41    -0.036        0.  )
+           BODY614_POLE_DEC      = (   85.04    -0.004        0.  )
+           BODY614_PM            = (  153.51   190.6742373    0.  )
+           BODY614_LONG_AXIS     = (    0.                        )
+ 
+        \begintext
+ 
+ 
+ 
+     Atlas
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY615_POLE_RA       = (   40.58     -0.036      0. )
+           BODY615_POLE_DEC      = (   83.53     -0.004      0. )  
+           BODY615_PM            = (  137.88    598.3060000  0. )
+           BODY615_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+     Prometheus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY616_POLE_RA       = (  40.58      -0.036    )
+           BODY616_POLE_DEC      = (  83.53      -0.004    )
+           BODY616_PM            = ( 296.14     587.289000 )
+           BODY616_LONG_AXIS     = (   0.                  )
+ 
+        \begintext
+ 
+ 
+ 
+     Pandora
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY617_POLE_RA       = (   40.58     -0.036      0.  )
+           BODY617_POLE_DEC      = (   83.53     -0.004      0.  )
+           BODY617_PM            = (  162.92    572.7891000  0.  )
+           BODY617_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+ 
+ 
+ 
+     Pan
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY618_POLE_RA       = (   40.6     -0.036       0. )
+           BODY618_POLE_DEC      = (   83.5     -0.004       0. )
+           BODY618_PM            = (   48.8    626.0440000   0. )
+           BODY618_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+ 
+ 
+Satellites of Uranus
+ 
+  
+ 
+     Ariel
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+
+        \begindata 
+
+           BODY701_POLE_RA       = ( 257.43     0.          0. )
+           BODY701_POLE_DEC      = ( -15.10     0.          0. )
+           BODY701_PM            = ( 156.22  -142.8356681   0. )
+           BODY701_LONG_AXIS     = (   0.                      )
+ 
+           BODY701_NUT_PREC_RA   = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.    0.    0.29 )
+ 
+           BODY701_NUT_PREC_DEC  = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.    0.    0.28 )
+ 
+           BODY701_NUT_PREC_PM   = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.   0.05   0.08 )
+        \begintext
+ 
+ 
+ 
+     Umbriel
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY702_POLE_RA       = (  257.43     0.          0. )
+           BODY702_POLE_DEC      = (  -15.10     0.          0. )
+           BODY702_PM            = (  108.05   -86.8688923   0. )
+           BODY702_LONG_AXIS     = (    0.                      )
+ 
+           BODY702_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.   0.    0.   0.21 )
+ 
+           BODY702_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.   0.    0.   0.20 )
+ 
+           BODY702_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0.  -0.09  0.   0.06 )
+
+        \begintext
+ 
+ 
+ 
+     Titania
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY703_POLE_RA       = (  257.43    0.          0. )
+           BODY703_POLE_DEC      = (  -15.10    0.          0. )
+           BODY703_PM            = (   77.74  -41.3514316   0. )
+           BODY703_LONG_AXIS     = (    0.                     )
+ 
+           BODY703_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.29 )
+ 
+           BODY703_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.28 )
+ 
+           BODY703_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.08 )
+        \begintext
+ 
+ 
+ 
+     Oberon
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY704_POLE_RA       = (  257.43    0.          0. )
+           BODY704_POLE_DEC      = (  -15.10    0.          0. )
+           BODY704_PM            = (    6.77  -26.7394932   0. )
+           BODY704_LONG_AXIS     = (    0.                     )
+ 
+ 
+           BODY704_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.16 )
+ 
+           BODY704_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.16 )
+ 
+           BODY704_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0.04 )
+        \begintext
+ 
+ 
+ 
+     Miranda
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+
+           BODY705_POLE_RA      = (  257.43     0.         0. )
+           BODY705_POLE_DEC     = (  -15.08     0.         0. )
+           BODY705_PM           = (   30.70  -254.6906892  0. )
+           BODY705_LONG_AXIS    = (    0.                     )
+ 
+           BODY705_NUT_PREC_RA  = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    4.41   0.     0.    0.    0. 
+                                    0.    -0.04   0.             )
+ 
+           BODY705_NUT_PREC_DEC = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    4.25   0.     0.    0.    0. 
+                                    0.    -0.02   0.             )
+ 
+           BODY705_NUT_PREC_PM  = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    1.15  -1.27   0.    0.    0.  
+                                    0.    -0.09   0.15           )
+        \begintext
+ 
+ 
+ 
+     Cordelia
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY706_POLE_RA      = (   257.31      0.         0.  )
+           BODY706_POLE_DEC     = (   -15.18      0.         0.  )
+           BODY706_PM           = (   127.69  -1074.5205730  0.  )
+           BODY706_LONG_AXIS    = (     0.                       )
+ 
+           BODY706_NUT_PREC_RA  = (   -0.15    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY706_NUT_PREC_DEC = (    0.14    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )  
+
+           BODY706_NUT_PREC_PM  = (   -0.04    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             ) 
+ 
+        \begintext
+ 
+ 
+
+     Ophelia
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+   
+           BODY707_POLE_RA      = (  257.31     0.         0. )
+           BODY707_POLE_DEC     = (  -15.18     0.         0. )
+           BODY707_PM           = (  130.35  -956.4068150  0. )
+           BODY707_LONG_AXIS    = (    0.                     )
+ 
+           BODY707_NUT_PREC_RA  = (    0.     -0.09   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY707_NUT_PREC_DEC = (    0.      0.09   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY707_NUT_PREC_PM  = (    0.     -0.03   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+ 
+        \begintext
+ 
+ 
+ 
+     Bianca
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY708_POLE_RA      = (  257.31     0.         0.  )
+           BODY708_POLE_DEC     = (  -15.18     0.         0.  )
+           BODY708_PM           = (  105.46  -828.3914760  0.  )
+           BODY708_LONG_AXIS    = (    0.                      )
+ 
+           BODY708_NUT_PREC_RA  = (    0.      0.    -0.16    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+           BODY708_NUT_PREC_DEC = (    0.      0.     0.16    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+           BODY708_NUT_PREC_PM  = (    0.      0.    -0.04    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+        \begintext
+ 
+ 
+ 
+     Cressida
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+ 
+           BODY709_POLE_RA      = (  257.31      0.          0.  )
+           BODY709_POLE_DEC     = (  -15.18      0.          0.  )
+           BODY709_PM           = (   59.16   -776.5816320   0.  )
+           BODY709_LONG_AXIS    = (    0.                        )
+ 
+
+           BODY709_NUT_PREC_RA  = (    0.      0.     0.     -0.04   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+           BODY709_NUT_PREC_DEC = (    0.      0.     0.      0.04   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+           BODY709_NUT_PREC_PM  = (    0.      0.     0.     -0.01   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+        \begintext
+ 
+ 
+ 
+     Desdemona
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+  
+           BODY710_POLE_RA      = ( 257.31      0.           0.  )
+           BODY710_POLE_DEC     = ( -15.18      0.           0.  )
+           BODY710_PM           = (  95.08   -760.0531690    0.  )
+           BODY710_LONG_AXIS    = (   0.                         )
+ 
+           BODY710_NUT_PREC_RA  = (   0.      0.     0.      0.    -0.17 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY710_NUT_PREC_DEC = (   0.      0.     0.      0.     0.16 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY710_NUT_PREC_PM  = (   0.      0.     0.      0.    -0.04  
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+
+        \begintext
+ 
+ 
+ 
+     Juliet
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY711_POLE_RA      = (  257.31     0.           0.   )
+           BODY711_POLE_DEC     = (  -15.18     0.           0.   )
+           BODY711_PM           = (  302.56  -730.1253660    0.   )
+           BODY711_LONG_AXIS    = (    0.                         )
+ 
+           BODY711_NUT_PREC_RA  = (   0.      0.     0.      0.     0.  
+                                     -0.06    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+ 
+           BODY711_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.06    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+  
+           BODY711_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                     -0.02    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+ 
+        \begintext
+ 
+ 
+ 
+     Portia
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+    
+           BODY712_POLE_RA      = (  257.31      0.           0.   )
+           BODY712_POLE_DEC     = (  -15.18      0.           0.   )
+           BODY712_PM           = (   25.03   -701.4865870    0.   )
+           BODY712_LONG_AXIS    = (    0.                          )
+ 
+           BODY712_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.     -0.09   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY712_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.09   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+           BODY712_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.     -0.02   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+        \begintext
+ 
+ 
+ 
+     Rosalind
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+   
+           BODY713_POLE_RA      = ( 257.31      0.          0.  )
+           BODY713_POLE_DEC     = ( -15.18      0.          0.  )
+           BODY713_PM           = ( 314.90   -644.6311260   0.  )
+           BODY713_LONG_AXIS    = (   0.                        )
+ 
+           BODY713_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.    -0.29    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+           BODY713_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.28    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.              )
+
+           BODY713_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.    -0.08    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.              )
+ 
+        \begintext
+ 
+ 
+ 
+     Belinda
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY714_POLE_RA      = (   257.31      0.         0. )
+           BODY714_POLE_DEC     = (   -15.18      0.         0. )
+           BODY714_PM           = (   297.46   -577.3628170  0. )
+           BODY714_LONG_AXIS    = (     0.                      )
+ 
+           BODY714_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.     -0.03   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY714_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.03   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY714_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.     -0.01   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+        \begintext
+ 
+ 
+ 
+     Puck
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY715_POLE_RA      = (  257.31      0.         0.  )
+           BODY715_POLE_DEC     = (  -15.18      0.         0.  )
+           BODY715_PM           = (   91.24   -472.5450690  0.  )
+           BODY715_LONG_AXIS    = (    0.                       )
+ 
+           BODY715_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.    -0.33 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY715_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.     0.31
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY715_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.    -0.09
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+  
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Neptune
+ 
+ 
+     Triton
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+
+           BODY801_POLE_RA       = ( 299.36     0.         0.  )
+           BODY801_POLE_DEC      = (  41.17     0.         0.  )
+           BODY801_PM            = ( 296.53   -61.2572637  0.  )
+           BODY801_LONG_AXIS     = (   0.                      )
+ 
+ 
+           BODY801_NUT_PREC_RA   = (  0.      0.      0.      0.  
+                                      0.      0.      0.    -32.35    
+                                      0.     -6.28   -2.08   -0.74       
+                                     -0.28   -0.11   -0.07   -0.02    
+                                     -0.01                         )
+ 
+ 
+           BODY801_NUT_PREC_DEC  = (  0.      0.      0.      0.  
+                                      0.      0.      0.     22.55    
+                                      0.      2.10    0.55    0.16   
+                                      0.05    0.02    0.01    0.
+                                      0.                           )
+ 
+ 
+           BODY801_NUT_PREC_PM   = (  0.      0.      0.      0.  
+                                      0.      0.      0.     22.25   
+                                      0.      6.73    2.05    0.74   
+                                      0.28    0.11    0.05    0.02
+                                      0.01                         )
+  
+        \begintext
+ 
+ 
+ 
+ 
+     Nereid
+ 
+        Old values:
+ 
+           Values are from the 1988 IAU report [10].  Note that this 
+           rotation model pre-dated the 1989 Voyager 2 Neptune
+           encounter.
+
+ 
+           body802_pole_ra       = (    273.48    0.        0.  )
+           body802_pole_dec      = (     67.22    0.        0.  )
+           body802_pm            = (    237.22    0.9996465 0.  )
+           body802_long_axis     = (      0.                    )
+ 
+ 
+           The report seems to have a typo:  in the nut_prec_ra expression,
+           where the report gives  -0.51 sin 3N3, we use -0.51 3N2.
+ 
+           body802_nut_prec_ra   = (  0.    -17.81
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                      2.56   -0.51   0.11   -0.03  )
+ 
+           body802_nut_prec_dec  = (  0.     -6.67
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                      0.47   -0.07   0.01          )
+ 
+           body802_nut_prec_pm   = (  0.     16.48
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                     -2.57    0.51 -0.11    0.02  )
+ 
+ 
+ 
+        Current values:
+ 
+           The 2006 report [1] states that values for Nereid are not
+           given because Nereid is not in synchronous rotation with Neptune
+           (p. 167).
+ 
+ 
+ 
+     Naiad
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY803_POLE_RA       = (  299.36      0.          0.  )
+           BODY803_POLE_DEC      = (   43.36      0.          0.  )
+           BODY803_PM            = (  254.06  +1222.8441209   0.  )
+           BODY803_LONG_AXIS     = (    0.                        )
+ 
+ 
+           BODY803_NUT_PREC_RA   = (    0.70     -6.49     0.      0.
+                                        0.        0.       0.      0.
+                                        0.25      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY803_NUT_PREC_DEC  = (   -0.51     -4.75     0.      0.
+                                        0.        0.       0.      0.
+                                        0.09      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY803_NUT_PREC_PM   = (   -0.48      4.40     0.      0.
+                                        0.        0.       0.      0.
+                                       -0.27      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+    
+        \begintext
+ 
+ 
+ 
+ 
+     Thalassa
+ 
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY804_POLE_RA       = (  299.36      0.          0. )
+           BODY804_POLE_DEC      = (   43.45      0.          0. )
+           BODY804_PM            = (  102.06   1155.7555612   0. )  
+           BODY804_LONG_AXIS     = (    0.                       )
+ 
+ 
+           BODY804_NUT_PREC_RA   = (    0.70      0.      -0.28    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+   
+  
+           BODY804_NUT_PREC_DEC  = (   -0.51      0.      -0.21    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0. 
+                                        0.                             )
+ 
+           BODY804_NUT_PREC_PM   = (   -0.48      0.       0.19    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0. 
+                                        0.                             )
+                                                                 
+        \begintext
+ 
+ 
+ 
+     Despina
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY805_POLE_RA       = (  299.36      0.          0. )
+           BODY805_POLE_DEC      = (   43.45      0.          0. )
+           BODY805_PM            = (  306.51  +1075.7341562   0. )
+           BODY805_LONG_AXIS     = (    0.                       )
+ 
+ 
+           BODY805_NUT_PREC_RA   = (    0.70      0.       0.     -0.09
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+ 
+           BODY805_NUT_PREC_DEC  = (   -0.51      0.       0.     -0.07
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+ 
+           BODY805_NUT_PREC_PM   = (   -0.49      0.       0.      0.06
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+        \begintext
+ 
+ 
+ 
+     Galatea
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY806_POLE_RA       = (   299.36      0.          0. )
+           BODY806_POLE_DEC      = (    43.43      0.          0. )
+           BODY806_PM            = (   258.09    839.6597686   0. )
+           BODY806_LONG_AXIS     = (     0.                       )
+ 
+ 
+           BODY806_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                       -0.07      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY806_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                       -0.05      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY806_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.05      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             ) 
+        \begintext
+
+ 
+     Larissa
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+  
+        \begindata
+
+           BODY807_POLE_RA       = (   299.36     0.           0. )
+           BODY807_POLE_DEC      = (    43.41     0.           0. )
+           BODY807_PM            = (   179.41  +649.0534470    0. )
+           BODY807_LONG_AXIS     = (     0.                       )
+ 
+ 
+           BODY807_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                        0.       -0.27     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY807_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                        0.       -0.20     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY807_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.        0.19     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+        \begintext
+ 
+ 
+ 
+     Proteus
+ 
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY808_POLE_RA       = (  299.27      0.          0.  )
+           BODY808_POLE_DEC      = (   42.91      0.          0.  )
+           BODY808_PM            = (   93.38   +320.7654228   0.  )
+           BODY808_LONG_AXIS     = (    0.                        )
+ 
+ 
+           BODY808_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                        0.        0.      -0.05    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY808_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                        0.        0.      -0.04    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY808_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.        0.       0.04    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+   
+        \begintext
+  
+ 
+ 
+ 
+ 
+Satellites of Pluto
+ 
+     Charon
+ 
+        Old values:
+        
+           Values are from the 2003 IAU report. 
+ 
+           body901_pole_ra       = (   313.02     0.         0. )
+           body901_pole_dec      = (     9.09     0.         0. )
+           body901_pm            = (    56.77   -56.3623195  0. )
+           body901_long_axis     = (     0.                     )
+               
+        Current values:
+ 
+        \begindata
+ 
+           BODY901_POLE_RA       = (   312.993    0.         0. )
+           BODY901_POLE_DEC      = (     6.163    0.         0. )
+           BODY901_PM            = (    57.305  -56.3625225  0. )
+           BODY901_LONG_AXIS     = (     0.                     )
+
+        \begintext
+ 
+ 
+ 
+Orientation constants for Selected Comets and Asteroids
+--------------------------------------------------------
+
+
+
+19P/Borrelly
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY1000005_POLE_RA       = (   218.5      0.         0.  )
+           BODY1000005_POLE_DEC      = (   -12.5      0.         0.  )
+           BODY1000005_PM            = (   000.     390.0        0.  )
+           BODY1000005_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+
+
+
+9P/Tempel 1
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY1000093_POLE_RA       = (   294.       0.         0.  )
+           BODY1000093_POLE_DEC      = (    73.       0.         0.  )
+           BODY1000093_PM            = (   252.63   212.064      0.  )
+           BODY1000093_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+
+
+Vesta
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY2000004_POLE_RA       = (   301.      0.         0.  )
+           BODY2000004_POLE_DEC      = (    41.      0.         0.  )
+           BODY2000004_PM            = (   292.   1617.332776   0.  )
+           BODY2000004_LONG_AXIS     = (     0.                     )
+ 
+        \begintext
+
+Eros
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY2000433_POLE_RA       = (   11.35       0.           0. )
+           BODY2000433_POLE_DEC      = (   17.22       0.           0. )
+           BODY2000433_PM            = (  326.07    1639.38864745   0. )
+           BODY2000433_LONG_AXIS     = (    0.                         )
+ 
+        \begintext
+
+
+Itokawa
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY2025143_POLE_RA       = (   90.53       0.           0. )
+           BODY2025143_POLE_DEC      = (  -66.30       0.           0. )
+           BODY2025143_PM            = (  000.0      712.143        0. )
+           BODY2025143_LONG_AXIS     = (    0.                         )
+ 
+        \begintext
+
+
+
+Ida
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY2431010_POLE_RA       = (  168.76      0.         0. )
+           BODY2431010_POLE_DEC      = (   -2.88      0.         0. )
+           BODY2431010_PM            = (  265.95  +1864.6280070  0. )
+           BODY2431010_LONG_AXIS     = (    0.                      )
+ 
+        \begintext
+
+Gaspra
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+               
+        Current values:
+ 
+        \begindata 
+ 
+           BODY9511010_POLE_RA       = (   9.47     0.         0. )
+           BODY9511010_POLE_DEC      = (  26.70     0.         0. )
+           BODY9511010_PM            = (  83.67  1226.9114850  0. )
+           BODY9511010_LONG_AXIS     = (   0.                     )
+
+        \begintext
+
+
+
+
+
+
+
+
+
+ 
+Radii of Sun and Planets
+--------------------------------------------------------
+ 
+ 
+Sun
+ 
+     Value for the Sun is from the [3], page K7.
+ 
+        \begindata
+ 
+        BODY10_RADII      = (   696000.     696000.      696000.     )
+ 
+        \begintext
+ 
+ 
+Mercury
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY199_RADII     = ( 2439.7   2439.7   2439.7 )
+ 
+        \begintext
+ 
+ 
+Venus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY299_RADII     = ( 6051.8   6051.8   6051.8 )
+ 
+        \begintext
+ 
+ 
+Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+
+        \begindata
+ 
+        BODY399_RADII     = ( 6378.14   6378.14   6356.75 )
+ 
+        \begintext
+ 
+ 
+Mars
+ 
+ 
+     Old values:
+
+        body499_radii       = (     3397.      3397.         3375.     )
+ 
+     Current values:
+
+
+        The IAU report gives separate values for the north and south
+        polar radii:
+
+           north:  3373.19
+           south:  3379.21 
+
+        We use the average of these values as the polar radius for
+        the triaxial model.
+ 
+        \begindata
+ 
+        BODY499_RADII       = ( 3396.19   3396.19   3376.20 )
+ 
+        \begintext
+ 
+ 
+ 
+Jupiter
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY599_RADII     = ( 71492   71492   66854 )
+ 
+        \begintext
+ 
+ 
+ 
+Saturn
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY699_RADII     = ( 60268   60268   54364 )
+ 
+        \begintext
+ 
+ 
+ 
+Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY799_RADII     = ( 25559   25559   24973 )
+ 
+        \begintext
+ 
+ 
+ 
+Neptune
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+  
+     Current values:
+ 
+        (Values are for the 1 bar pressure level.)
+ 
+        \begindata
+ 
+        BODY899_RADII     = ( 24764   24764  24341 )
+ 
+        \begintext
+ 
+ 
+ 
+Pluto
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY999_RADII     = ( 1195   1195   1195 )
+ 
+        \begintext
+ 
+
+
+
+Radii of Satellites
+--------------------------------------------------------
+ 
+ 
+Moon
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY301_RADII     = ( 1737.4   1737.4   1737.4 )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Mars
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY401_RADII     = ( 13.4    11.2    9.2 )
+        BODY402_RADII     = (  7.5     6.1    5.2 )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Jupiter
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+         
+        \begindata
+ 
+        BODY501_RADII     = ( 1829.4   1819.3   1815.7  )
+        BODY502_RADII     = ( 1564.13  1561.23  1560.93 )
+        BODY503_RADII     = ( 2632.4   2632.29  2632.35 )
+        BODY504_RADII     = ( 2409.4   2409.2   2409.3  )
+        BODY505_RADII     = (  125       73       64    )
+ 
+        \begintext
+ 
+        Only mean radii are available in the 2003 IAU report for bodies
+        506-513.
+ 
+        \begindata
+ 
+        BODY506_RADII    = (    85       85       85   )
+        BODY507_RADII    = (    40       40       40   )
+        BODY508_RADII    = (    18       18       18   )
+        BODY509_RADII    = (    14       14       14   )
+        BODY510_RADII    = (    12       12       12   )
+        BODY511_RADII    = (    15       15       15   )
+        BODY512_RADII    = (    10       10       10   )
+        BODY513_RADII    = (     5        5        5   )
+        BODY514_RADII    = (    58       49       42   )
+        BODY515_RADII    = (    10        8        7   )
+ 
+        \begintext
+ 
+        The value for the second radius for body 516 is not given in 
+        2003 IAU report.   The values given are:
+ 
+           BODY516_RADII    = (  30   ---   20   )
+ 
+        For use within the SPICE system, we use only the mean radius.
+        \begindata
+ 
+        BODY516_RADII    = (  21.5   21.5  21.5  )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Saturn
+ 
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report.
+    
+        body601_radii     = (  209.1   196.2   191.4 )
+        body602_radii     = (  256.3   247.3   244.6 )
+        body603_radii     = (  535.6   528.2   525.8 )
+        body604_radii     = (  560     560     560   )
+        body605_radii     = (  764     764     764   )
+        body606_radii     = ( 2575    2575    2575   )
+        body607_radii     = (  164     130     107   )
+        body608_radii     = (  718     718     718   )
+        body609_radii     = (  115     110     105   )
+        body610_radii     = (   97.0    95.0    77.0 )
+        body611_radii     = (   69.0    55.0    55.0 )
+ 
+ 
+        Only the first equatorial radius for Helene (body 612) was given in the
+        2003 IAU report:
+ 
+            body612_radii     = (       17.5        ---          ---     )
+ 
+        The mean radius was 16km; we used this radius for all three axes, as
+        we do for the satellites for which only the mean radius is available.
+ 
+ 
+        body612_radii     = (   16      16       16  )
+        body613_radii     = (   15      12.5     7.5 )
+        body614_radii     = (   15.0     8.0     8.0 )
+        body615_radii     = (   18.5    17.2    13.5 )
+        body616_radii     = (   74.0    50.0    34.0 )
+        body617_radii     = (   55.0    44.0    31.0 )
+  
+      
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY601_RADII     = (  207.4     196.8     190.6  )
+        BODY602_RADII     = (  256.6     251.4     248.3  )
+        BODY603_RADII     = (  540.4     531.1     527.5  )
+        BODY604_RADII     = (  563.8     561.0     560.3  )
+        BODY605_RADII     = (  767.2     762.5     763.1  )
+        BODY606_RADII     = ( 2575      2575      2575    )
+        BODY607_RADII     = (  164       130       107    )
+        BODY608_RADII     = (  747.4     747.4     712.4  )
+        BODY609_RADII     = (  108.6     107.7     101.5  )
+        BODY610_RADII     = (   97.0      95.0      77.0  )
+        BODY611_RADII     = (   69.0      55.0      55.0  )
+ 
+        \begintext
+ 
+        Only the first equatorial radius for Helene (body 612) is given in the
+        2006 IAU report:
+ 
+            BODY612_RADII     = (       17.5        ---          ---     )
+ 
+        The mean radius is 16km; we use this radius for all three axes, as
+        we do for the satellites for which only the mean radius is available.
+ 
+ 
+        \begindata
+ 
+        BODY612_RADII     = (  17.5      17.5      17.5  )
+        BODY613_RADII     = (  15        12.5       7.5  )
+        BODY614_RADII     = (  15.0       8.0       8.0  )
+        BODY615_RADII     = (  18.5      17.2      13.5  )
+        BODY616_RADII     = (  74.0      50.0      34.0  )
+        BODY617_RADII     = (  55.0      44.0      31.0  )
+ 
+        \begintext
+ 
+ 
+         For Pan, only a mean radius is given in the 2006 report.
+ 
+        \begindata
+ 
+        BODY618_RADII     = (   10       10     10   )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY701_RADII     = (  581.1   577.9   577.7 )
+        BODY702_RADII     = (  584.7   584.7   584.7 )
+        BODY703_RADII     = (  788.9   788.9   788.9 )
+        BODY704_RADII     = (  761.4   761.4   761.4 )
+        BODY705_RADII     = (  240.4   234.2   232.9 )
+ 
+        \begintext
+ 
+        The 2000 report gives only mean radii for satellites 706--715.
+ 
+        \begindata
+ 
+        BODY706_RADII     = (   13      13      13 )
+        BODY707_RADII     = (   15      15      15 )
+        BODY708_RADII     = (   21      21      21 )
+        BODY709_RADII     = (   31      31      31 )
+        BODY710_RADII     = (   27      27      27 )
+        BODY711_RADII     = (   42      42      42 )
+        BODY712_RADII     = (   54      54      54 )
+        BODY713_RADII     = (   27      27      27 )
+        BODY714_RADII     = (   33      33      33 )
+        BODY715_RADII     = (   77      77      77 )
+ 
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Neptune
+ 
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        The 2000 report gives mean radii only for bodies 801-806.
+ 
+        \begindata
+ 
+        BODY801_RADII     = ( 1352.6  1352.6  1352.6 )
+        BODY802_RADII     = (  170     170     170   )
+        BODY803_RADII     = (   29      29     29    )
+        BODY804_RADII     = (   40      40     40    )
+        BODY805_RADII     = (   74      74     74    )
+        BODY806_RADII     = (   79      79     79    )
+ 
+        \begintext
+ 
+ 
+        The second equatorial radius for Larissa is not given in the 2000
+        report.  The available values are:
+ 
+            BODY807_RADII     = (   104     ---     89   )
+ 
+        For use within the SPICE system, we use only the mean radius.
+        \begindata
+ 
+        BODY807_RADII     = (   96      96     96   )
+        BODY808_RADII     = (  218     208    201   )
+ 
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Pluto
+ 
+     
+     Old values:
+ 
+        Values are from the 2003 IAU report. 
+
+        BODY901_RADII     = (  593     593    593   )
+             
+     Current values:
+ 
+        \begindata
+ 
+        BODY901_RADII     = (  605     605    605   )
+ 
+        \begintext
+ 
+
+
+Radii for Selected Comets and Asteroids
+--------------------------------------------------------
+
+
+19P/Borrelly
+
+
+     Current values:
+ 
+
+        The value in the data assignment below is the 
+        "effective radius."
+
+        The first principal axis length is 
+
+           3.5 km
+
+        The lengths of the other semi-axes are not provided
+        by [1].
+
+        \begindata
+ 
+        BODY1000005_RADII     = (  4.22   4.22   4.22  )
+ 
+        \begintext
+
+
+
+Halley
+
+
+     Current values:
+
+        \begindata
+ 
+        BODY1000036_RADII     = (  8.0   4.0   4.0  )
+ 
+        \begintext
+
+
+
+9P/Tempel 1
+
+
+     Current values:
+
+
+        The value in the data assignment below is the 
+        "effective radius."
+            
+        According to [1]:
+
+           The maximum and minimum radii are not properly 
+           the values of the principal semi-axes, they
+           are half the maximum and minimum values of the
+           diameter. Due to the large deviations from a
+           simple ellipsoid, they may not correspond with
+           measurements along the principal axes, or be
+           orthogonal to each other.
+
+        \begindata
+ 
+        BODY1000093_RADII     = (  3.0   3.0   3.0  )
+ 
+        \begintext
+
+
+81P/Wild 2
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY1000107_RADII     = (  2.7   1.9   1.5 )
+ 
+        \begintext
+
+
+Ceres
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000001_RADII     = ( 487.3  487.3  454.7 )
+ 
+        \begintext
+
+
+Vesta
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000004_RADII     = ( 289.  280.  229.  )
+ 
+        \begintext
+
+
+Toutatis
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2004179_RADII     = (  2.13  1.015  0.85  )
+ 
+        \begintext
+
+ 
+Kleopatra
+
+
+     Old values:
+
+        Values are from the 2003 report.
+
+ 
+        body2000216_radii     = (   108.5      47    40.5  )
+ 
+
+     Current values:
+ 
+ 
+        No values are provided in the 2006 report.
+
+
+Mathilde
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000253_RADII     = (  33.   24.   23.  )
+ 
+        \begintext
+       
+Eros
+ 
+
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY2000433_RADII     = (  17.0   5.5   5.5  )
+ 
+        \begintext
+
+
+Itokawa
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2025143_RADII     = (  0.535   0.294   0.209  )
+ 
+        \begintext
+
+
+
+Gaspra
+
+     
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY9511010_RADII     = (    9.1    5.2    4.4 )
+ 
+        \begintext
+
+        
+        
+        
+Ida
+
+     
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY2431010_RADII     = (   26.8   12.0    7.6 )
+ 
+        \begintext
+
+        
+
+===========================================================================
+End of file pck00009.tpc
+===========================================================================
+
+
+
diff --git a/tests/pytests/data/f004a47/vikingAddendum003.ti b/tests/pytests/data/f004a47/vikingAddendum003.ti
new file mode 100644
index 0000000..98d77da
--- /dev/null
+++ b/tests/pytests/data/f004a47/vikingAddendum003.ti
@@ -0,0 +1,23 @@
+\begindata
+INS-27001_TRANSX = ( 0.0, 0.0117647058823529, 0.0)
+INS-27001_TRANSY = ( 0.0, 0.0, 0.0117647058823529)
+INS-27001_ITRANSS = ( 0.0, 85.0, 0.0)
+INS-27001_ITRANSL = ( 0.0, 0.0, 85.0)
+
+INS-27002_TRANSX = ( 0.0, 0.0117647058823529, 0.0)
+INS-27002_TRANSY = ( 0.0, 0.0, 0.0117647058823529)
+INS-27002_ITRANSS = ( 0.0, 85.0, 0.0)
+INS-27002_ITRANSL = ( 0.0, 0.0, 85.0)
+
+\begintext
+These are the parameters for writing c-kernels.  Isis will create ck
+with the same frame endpoints as the mission ck. For Viking1 the ck
+instrument frame is VO1_PLATFORM (-27000) and the ck reference frame
+is B1950 (2) or J2000 (1), depending on the ck used.  The mdim2.0_rand
+ck is in J2000.
+
+\begindata
+INS-27001_CK_FRAME_ID=-27000
+INS-27001_CK_REFERENCE_ID=2
+INS-27002_CK_FRAME_ID=-27000
+INS-27002_CK_REFERENCE_ID=2
diff --git a/tests/pytests/data/f004a47/vo1_fict.tsc b/tests/pytests/data/f004a47/vo1_fict.tsc
new file mode 100644
index 0000000..ca6eab8
--- /dev/null
+++ b/tests/pytests/data/f004a47/vo1_fict.tsc
@@ -0,0 +1,136 @@
+KPL/SCLK
+
+\beginlabel
+PDS_VERSION_ID               = PDS3
+RECORD_TYPE                  = STREAM
+RECORD_BYTES                 = "N/A"
+^SPICE_KERNEL                = "VO1_FICT.TSC"
+MISSION_NAME                 = VIKING
+SPACECRAFT_NAME              = "VIKING ORBITER 1"
+DATA_SET_ID                  = "VO1/VO2-M-SPICE-6-V1.0"
+KERNEL_TYPE_ID               = SCLK
+PRODUCT_ID                   = "VO1_FICT.TSC"
+PRODUCT_CREATION_TIME        = 2000-04-21T10:53:20
+PRODUCER_ID                  = "NAIF/JPL"
+MISSION_PHASE_NAME           = {
+                               PRIMARY_MISSION,
+                               EXTENDED_MISSION,
+                               CONTINUATION_MISSION,
+                               SURVEY_MISSION
+                               }
+PRODUCT_VERSION_TYPE         = ACTUAL
+PLATFORM_OR_MOUNTING_NAME    = "N/A"
+START_TIME                   = "N/A"
+STOP_TIME                    = "N/A"
+SPACECRAFT_CLOCK_START_COUNT = "N/A"
+SPACECRAFT_CLOCK_STOP_COUNT  = "N/A"
+TARGET_NAME                  = MARS
+INSTRUMENT_NAME              = "N/A"
+NAIF_INSTRUMENT_ID           = "N/A"
+SOURCE_PRODUCT_ID            = "N/A"
+NOTE                         = "See comments in the file for details"
+OBJECT                       = SPICE_KERNEL
+  INTERCHANGE_FORMAT         = ASCII
+  KERNEL_TYPE                = CLOCK_COEFFICIENTS
+  DESCRIPTION                = "SCLK file implementing fictitious clock
+used to tag orientation data in the VO1 CK files. This SCLK file does NOT
+represent real Viking Orbiter 1 on-board clock but rather is a simple
+counter of milliseconds since 1 Jan 1976 00:00:00. "
+END_OBJECT                   = SPICE_KERNEL
+\endlabel
+
+
+Viking Orbiter 1 "fictitious" SCLK Kernel
+--------------------------------------------------------
+ 
+   This file contains the data necessary to convert between the
+   'fictitious' Viking Orbiter 1 on-board clock times used as tags
+   for pointing instances in Viking Orbiter 1 CK files and ephemeris
+   time.
+
+   NAIF suggests that you do not modify this file. If you do modify
+   it, be sure to indicate this in the `Version' section below.
+
+ 
+Version
+--------------------------------------------------------
+ 
+   Version 1.0.1 -- April 20, 2000
+   
+      Comments in the file were slightly reformatted and augmented.
+ 
+   Version 1.0.0 -- July 22, 1996
+ 
+ 
+Implementation notes
+--------------------------------------------------------
+ 
+   This SPICE SCLK file is constructed so that valid SCLK strings
+   are simply the number of seconds that have passed since the UTC
+   epoch 1 Jan 1976 00:00:00. Thus 288929292.827 simply represents
+   the epoch that occurs 288929292.827 seconds past the UTC epoch
+   1 Jan 1976.
+
+   For all time, the clock runs at the same rate as Terrestrial
+   Dynamical Time (TDT). There is only one partition for this clock.
+
+   You must load this file into the kernel pool before using any
+   of the SPICELIB SCLK routines. The code fragment
+ 
+      CALL LDPOOL ( < name of this file > )
+ 
+   performs this task. To convert between ET and UTC, you will
+   also need to load a leapseconds kernel. The additional call
+   to LDPOOL,
+ 
+      CALL LDPOOL ( < name of your leapsecond file > )
+ 
+   will accomplish this. Note that you must supply the actual names
+   of the files used on your system as arguments to LDPOOL. Because
+   the file names are system dependent, we do not list them here.
+
+   For more information, consult your SPICELIB required reading
+   files. The following areas are covered:
+
+      SCLK system                     SCLK required reading
+      Time systems and conversion     TIME required reading
+      Kernel pool                     KERNEL required reading
+ 
+ 
+Kernel data
+--------------------------------------------------------
+ 
+   \begindata
+   
+      SCLK_KERNEL_ID                = (  @22-JUL-1996     )
+         
+      SCLK_DATA_TYPE_27             = (                 1 )
+         
+      SCLK01_TIME_SYSTEM_27         = (                 2 )
+      SCLK01_N_FIELDS_27            = (                 2 )
+      SCLK01_MODULI_27              = ( 10000000000  1000 )
+      SCLK01_OFFSETS_27             = (           0     0 )
+      SCLK01_OUTPUT_DELIM_27        = (                 1 )
+         
+      SCLK_PARTITION_START_27       = ( 0.0000000000000E+00 )
+      SCLK_PARTITION_END_27         = ( 1.00000000E+14      )
+      SCLK01_COEFFICIENTS_27        = ( 0.00000000E+00     
+                                        @01-JAN-1976-00:00:47.184 
+                                        1  )
+      
+   \begintext
+
+
+Contact Information
+--------------------------------------------------------
+
+   Contact NAIF node of the Planetary Data System if you have any
+   questions regarding this SCLK file.
+
+      Charles H. Acton, Jr
+      (818)-354-3869 
+      chuck.acton@jpl.nasa.gov
+      
+      Boris V. Semenov
+      (818)-354-8136 
+      boris.semenov@jpl.nasa.gov
diff --git a/tests/pytests/data/f004a47/vo1_fsc.tsc b/tests/pytests/data/f004a47/vo1_fsc.tsc
new file mode 100644
index 0000000..aa5d9a7
--- /dev/null
+++ b/tests/pytests/data/f004a47/vo1_fsc.tsc
@@ -0,0 +1,237 @@
+KPL/SCLK
+
+\beginlabel
+PDS_VERSION_ID               = PDS3
+RECORD_TYPE                  = STREAM
+RECORD_BYTES                 = "N/A"
+^SPICE_KERNEL                = "VO1_FSC.TSC"
+MISSION_NAME                 = VIKING
+SPACECRAFT_NAME              = "VIKING ORBITER 1"
+DATA_SET_ID                  = "VO1/VO2-M-SPICE-6-V1.0"
+KERNEL_TYPE_ID               = SCLK
+PRODUCT_ID                   = "VO1_FSC.TSC"
+PRODUCT_CREATION_TIME        = 2000-04-21T10:53:21
+PRODUCER_ID                  = "NAIF/JPL"
+MISSION_PHASE_NAME           = {
+                               PRIMARY_MISSION,
+                               EXTENDED_MISSION,
+                               CONTINUATION_MISSION,
+                               SURVEY_MISSION
+                               }
+PRODUCT_VERSION_TYPE         = ACTUAL
+PLATFORM_OR_MOUNTING_NAME    = "N/A"
+START_TIME                   = "N/A"
+STOP_TIME                    = "N/A"
+SPACECRAFT_CLOCK_START_COUNT = "N/A"
+SPACECRAFT_CLOCK_STOP_COUNT  = "N/A"
+TARGET_NAME                  = MARS
+INSTRUMENT_NAME              = "N/A"
+NAIF_INSTRUMENT_ID           = "N/A"
+SOURCE_PRODUCT_ID            = "N/A"
+NOTE                         = "See comments in the file for details"
+OBJECT                       = SPICE_KERNEL
+  INTERCHANGE_FORMAT         = ASCII
+  KERNEL_TYPE                = CLOCK_COEFFICIENTS
+  DESCRIPTION                = "SCLK file containing linear piecewise
+function representing VO1 FSC on-board clock. This function was generated as
+the result of VO1 image time tags restoration. "
+END_OBJECT                   = SPICE_KERNEL
+\endlabel
+
+
+Viking Orbiter 1 Reconstructed Frame Start Count (FSC) SCLK file
+--------------------------------------------------------
+
+   This file contain data necessary to convert a Viking Orbiter 1
+   FSC count to the ET time corresponding to it. These data are
+   based on the results of VO1 image times reconstruction done at
+   NAIF/JPL. The process of this reconstruction is described in
+   detail in the "VO Image Time Reconstruction" document.
+
+   Note that the main purpose of this file is to store the
+   reconstructed FSC counter; the on-board clock defined by the
+   function in this file was not used to time tag any of the
+   orientation data in CK files.
+
+   To avoid confusion with the other VO1 clock used for time tagging,
+   the FSC on-board clock in this file was assigned the NAIF ID
+   code -27999.
+   
+
+Version
+--------------------------------------------------------
+ 
+   Version 1.0.1 -- April 20, 2000
+   
+      Comments in the file were slightly reformatted and augmented.
+ 
+   Version 1.0.0 -- July 22, 1996
+        
+
+Implementation notes
+--------------------------------------------------------
+ 
+   This SPICE SCLK file is constructed so that valid SCLK strings
+   are the eight digit VO1 FSC count associated with each VO1 image.
+   Note that the actual "image time" (the time of the beginning,
+   middle or the end of exposure) has a significant offset from
+   the FSC tick start time. This offset depends on the exposure
+   duration and is described in the "VO Image Time Reconstruction"
+   document.
+
+   You must load this file into the kernel pool before using any
+   of the SPICELIB SCLK routines. The code fragment
+
+      CALL LDPOOL ( < name of this file > )
+ 
+   performs this task. To convert between ET and UTC, you will also
+   need to load a leapseconds kernel. The additional call to LDPOOL,
+
+      CALL LDPOOL ( < name of your leapsecond file > )
+ 
+   will accomplish this. Note that you must supply the actual names
+   of the files used on your system as arguments to LDPOOL. Because
+   the file names are system dependent, we do not list them here.
+
+   For more information, consult your SPICELIB required reading
+   files. The following areas are covered:
+
+      SCLK system                     SCLK required reading
+      Time systems and conversion     TIME required reading
+      Kernel pool                     KERNEL required reading
+
+
+Kernel data
+--------------------------------------------------------
+
+\begindata
+
+ SCLK_KERNEL_ID           = ( @22-JUL-1996 )
+
+ SCLK_DATA_TYPE_27999        = ( 1 )
+ SCLK01_TIME_SYSTEM_27999    = ( 2 )
+ SCLK01_N_FIELDS_27999       = ( 1 )
+ SCLK01_MODULI_27999         = ( 60000000 )
+ SCLK01_OFFSETS_27999        = ( 25837050 )
+ SCLK01_OUTPUT_DELIM_27999   = ( 1 )
+
+ SCLK_PARTITION_START_27999  = ( 
+                                0
+                                231791
+                                644942
+                                1569121
+                                3367553
+                                5555717
+                                6396566
+                                7572950
+                                8087730
+                                9835672
+                                10866610
+                                11503583
+                                12217716
+                                13159619
+                                13679685
+                                14664700
+                                15449939
+                                16432925
+                                17479492
+                                17896518
+                                18344818
+                                20321730
+                                23280832
+                                24166658
+                                24262845
+                                24359029
+                                24609280
+                                25992950
+                                26522392
+                                27368930
+                                27915783
+                                            )
+
+ SCLK_PARTITION_END_27999    = ( 
+                                231791
+                                644942
+                                1569121
+                                3367553
+                                5555717
+                                6396566
+                                7572950
+                                8087730
+                                9835672
+                                10866610
+                                11503583
+                                12217716
+                                13159619
+                                13679685
+                                14664700
+                                15449939
+                                16432925
+                                17479492
+                                17896518
+                                18344818
+                                20321730
+                                23280832
+                                24166658
+                                24262845
+                                24359029
+                                24609280
+                                25992950
+                                26522392
+                                27368930
+                                27915783
+                                59999999
+                                            )
+
+ SCLK01_COEFFICIENTS_27999   = ( 
+
+               0 -742936101.084011  4.480002320
+          231791 -741897676.845143  4.480001506
+          644942 -740046759.578601  4.480001685
+         1569121 -735906436.111559  4.480001416
+         3367553 -727849458.210550  4.480001972
+         5555717 -718046479.059529  4.480002284
+         6396566 -714279473.752967  4.480001816
+         7572950 -709009271.245943  4.480001816
+         8087730 -706703055.797485  4.480001869
+         9835672 -698872272.708142  4.480001557
+        10866610 -694253669.451953  4.480001151
+        11503583 -691400029.539901  4.480000884
+        12217716 -688200712.915836  4.480000934
+        13159619 -683980986.490315  4.480000934
+        13679685 -681651090.175512  4.480000934
+        14664700 -677238222.129167  4.480000778
+        15449939 -673720350.640383  4.480000830
+        16432925 -669316572.195161  4.480000882
+        17479492 -664627950.891482  4.480000922
+        17896518 -662759673.743136  4.480000929
+        18344818 -660751289.419364  4.480000581
+        20321730 -651894716.843243  4.480001297
+        23280832 -638637935.825957  4.480001191
+        24166658 -634669434.296886  4.480000989
+        24262845 -634238516.448398  4.480001715
+        24359029 -633807611.943517  4.480001275
+        24609280 -632686487.136533  4.480001142
+        25992950 -626487643.963656  4.480001192
+        26522392 -624115743.164982  4.480000986
+        27368930 -620323251.820923  4.480001408
+        27915783 -617873349.601991  4.480001089
+
+                                            )
+
+\begintext
+
+
+Contact Information
+--------------------------------------------------------
+
+   Contact NAIF node of the Planetary Data System if you have any
+   questions regarding this SCLK file.
+
+      Charles H. Acton, Jr
+      (818)-354-3869 
+      chuck.acton@jpl.nasa.gov
+      
+      Boris V. Semenov
+      (818)-354-8136 
+      boris.semenov@jpl.nasa.gov
diff --git a/tests/pytests/data/f004a47/vo1_sedr_ck2_0_sliced_-27000.xc b/tests/pytests/data/f004a47/vo1_sedr_ck2_0_sliced_-27000.xc
new file mode 100644
index 0000000..71e8535
--- /dev/null
+++ b/tests/pytests/data/f004a47/vo1_sedr_ck2_0_sliced_-27000.xc
@@ -0,0 +1,851 @@
+DAFETF NAIF DAF ENCODED TRANSFER FILE
+'DAF/CK  '
+'2'
+'6'
+'VO1 PLATFORM ATTITUDE; CREATED BY BVS/NAIF; 2006-FEB-09     '
+BEGIN_ARRAY 1 830
+'VO1 ATT. BASED ON GEM AND SEDR FILES    '
+'383F9F574^9'
+'384251F5D^9'
+'-6978'
+'2'
+'2'
+'1'
+830
+'CA965B2A89E4C^0'
+'-1294393B76A31A^0'
+'74CD97638987A8^0'
+'-667FFA8FFDAFC4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'CB0193CF5439A^0'
+'-1235EDEA0A6DD3^0'
+'741359CF2F48A^0'
+'-6690537EF1F8E8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'CB8639113D6618^0'
+'-11C0159EB60E12^0'
+'7329C313EF7794^0'
+'-66A56ADD6B6094^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'CC0ABC22E8FE1^0'
+'-1149F7DCECB019^0'
+'723EF767BC44BC^0'
+'-66B8DF77A0E3D^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'CCA813B03C7AD^0'
+'-10CCA4EBC68E52^0'
+'713A0CF436B66^0'
+'-66B58D70A6C3E4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C1021E72F785^0'
+'-30A8A36F477D8C^0'
+'AFAACFF6E7AD18^0'
+'-592EF5088A89D^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C3E339F55DC2^0'
+'-3085B14103FB1^0'
+'AF82E56FB93EE8^0'
+'-593FEA96CCD92C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C3E32E2798D48^0'
+'-308568E06CDEB8^0'
+'AF830ABB3C7FF8^0'
+'-593FC9E3499E98^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C36043B276778^0'
+'-308318B31DFF64^0'
+'AF8AA68A6EC79^0'
+'-594067A3277168^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C2DAC40C8F968^0'
+'-30806A4B0A495A^0'
+'AF91E28CD03C08^0'
+'-59423BE12910A8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C2ACE9CBD185^0'
+'-30855BE6794DB2^0'
+'AF8E87EE73EDF^0'
+'-594B28087FEF64^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C26E4331DCFC^0'
+'-3085420D12F88E^0'
+'AF9103856AD64^0'
+'-594D2D770EF02^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C26E6FA26D1B^0'
+'-308591E7106F08^0'
+'AF90F3503C3508^0'
+'-594D1D160BD068^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C26E4331DCFC^0'
+'-3085420D12F88E^0'
+'AF9103856AD64^0'
+'-594D2D770EF02^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C2718D6237E1^0'
+'-3085F6F5D24C54^0'
+'AF90D89908DCB^0'
+'-594CC38380E96^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C271880EF0498^0'
+'-3085A5D52E0CDE^0'
+'AF90E6AA0B2F38^0'
+'-594CD485D2C754^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9C2FAD57091248^0'
+'-30889057F6982E^0'
+'AF8918B7140178^0'
+'-594B94A6C1915C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9BFD4D8DE739E8^0'
+'-30A8794A1DEC36^0'
+'AFB5D45877EC1^0'
+'-593A486E652D6C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9BFD811B51F92^0'
+'-30A8F81F4B5B18^0'
+'AFB5897FF5EDF^0'
+'-593A3C872CE24^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9BF951A0B851D^0'
+'-30BCE9E7024646^0'
+'AFB92B24241E28^0'
+'-592F8392DA5DC4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9BF91C3EB9D258^0'
+'-30BD5E9A52F7F4^0'
+'AFB932D7A68578^0'
+'-592F91FBD5E888^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'9BF951A0B851D^0'
+'-30BCE9E7024646^0'
+'AFB92B24241E28^0'
+'-592F8392DA5DC4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CF549817F38^0'
+'-3A36AEBAC8FEDA^0'
+'BFAE842AC7A59^0'
+'-536EB5E4A91654^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CF9D101D80A8^0'
+'-3A37133CDF6428^0'
+'BFAE485B0EE3E8^0'
+'-536E8336A4F43^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CFB5780E2138^0'
+'-3A36932BAB95AC^0'
+'BFAE2D46811698^0'
+'-536EF30EDD53A8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CF9D101D80A8^0'
+'-3A37133CDF6428^0'
+'BFAE485B0EE3E8^0'
+'-536E8336A4F43^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CFE687BFF32^0'
+'-3A37003505B468^0'
+'BFAE0B0504A3A^0'
+'-536EA5D1464E38^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87D02F1723C498^0'
+'-3A368C2496921A^0'
+'BFAE121F3DCAA8^0'
+'-536E705E1AF5AC^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CBED30CBED18^0'
+'-3A371FE610FE98^0'
+'BFAFE48988121^0'
+'-5370C7BA211594^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC0AACDF33E^0'
+'-3A3721F2E4D186^0'
+'BFB01AC68926B8^0'
+'-537019B510605^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC4DF9B94AB8^0'
+'-3A371F4FBEA326^0'
+'BFAFE3931DFCE8^0'
+'-53702CD4B95394^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC0AACDF33E^0'
+'-3A3721F2E4D186^0'
+'BFB01AC68926B8^0'
+'-537019B510605^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC4DF9B94AB8^0'
+'-3A371F4FBEA326^0'
+'BFAFE3931DFCE8^0'
+'-53702CD4B95394^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87C9F88612292^0'
+'-3A40D468506E14^0'
+'BFB151B774C848^0'
+'-5369E9550BF0DC^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC044EF3ACB^0'
+'-3A494053DAE93A^0'
+'BFB0EAB94A004^0'
+'-53619EDE7BDF^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC0610B6771^0'
+'-3A4A0B31F4F8E2^0'
+'BFB0D7FAF9FCD^0'
+'-53613948665FD8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC35570AC3E8^0'
+'-3A49AD5EDE2B12^0'
+'BFB0C86D264D18^0'
+'-536151A3232B34^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC0610B6771^0'
+'-3A4A0B31F4F8E2^0'
+'BFB0D7FAF9FCD^0'
+'-53613948665FD8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC35570AC3E8^0'
+'-3A49AD5EDE2B12^0'
+'BFB0C86D264D18^0'
+'-536151A3232B34^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC6867FFC6B8^0'
+'-3A49F1B357DD12^0'
+'BFB0807BD2209^0'
+'-536174187EA0F^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC35570AC3E8^0'
+'-3A49AD5EDE2B12^0'
+'BFB0C86D264D18^0'
+'-536151A3232B34^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC9817946EF^0'
+'-3A49841246C81E^0'
+'BFB0A1D1B32698^0'
+'-5361266E58BC8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CC963E6E49^0'
+'-3A4991C9C44A86^0'
+'BFB0719093415^0'
+'-53618EC9D0F38^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'87CE3B464A93F^0'
+'-3A46B9714E26EA^0'
+'BFB23CD547E338^0'
+'-535CBE29A262^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'5FF39C222CC74^0'
+'-498FF222FF2E1C^0'
+'D66B74CBCCABF8^0'
+'-464CBA53ABA1C8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'5FF3D16327CD98^0'
+'-498F7C4B159E64^0'
+'D66B88E9DF85F^0'
+'-464CAF977B9228^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6008A700029088^0'
+'-4993F9B12572E4^0'
+'D661CE2D39FB88^0'
+'-464935F8CD48B8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6008AEC760B4^0'
+'-4993DBFB25F5F8^0'
+'D661FFA40DFD88^0'
+'-4648B392396284^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6008CF326FCC3^0'
+'-49937F15AC8C9^0'
+'D661F8419004^0'
+'-4648FF0C8F9CB8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'601DCDD7ECFA58^0'
+'-4998A030DC6444^0'
+'D6580AA6586DB8^0'
+'-46453507BAA72C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'601D9C7EB4CE24^0'
+'-499816F098EBAC^0'
+'D65865FAC6755^0'
+'-4644F1B1197E0C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'601DF60810046C^0'
+'-4998259AF8FD3^0'
+'D65834BD57559^0'
+'-4644FE0F643218^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'602855E8D3B1B8^0'
+'-499A0E77E5EBAC^0'
+'D65371C8434898^0'
+'-4643528100BC^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6032AD24E5A0D4^0'
+'-499C088CB5771C^0'
+'D64ED30AF53F48^0'
+'-464130512BD824^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'607A827FD5D8C^0'
+'-4984A1711A7978^0'
+'D62E69C7D5366^0'
+'-465A03483C2314^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'607AAC97628328^0'
+'-49851DE86847^0'
+'D62E3910C5B4C^0'
+'-4659DBCC43A474^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'608F29714491E4^0'
+'-4988BB64081594^0'
+'D624FCA4A05D7^0'
+'-465616729E3A18^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'608F669D2A0A04^0'
+'-4988FDFE619CE^0'
+'D624D29BA773E8^0'
+'-4655FCD12C49B^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'608F532BE8073C^0'
+'-4989355CFA6894^0'
+'D624D1E760D67^0'
+'-4655DFC395BD4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'60A4479121F074^0'
+'-498D583D6C715^0'
+'D61B41CFF2FAD8^0'
+'-4651E1AD648A8C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'605CA9958F7338^0'
+'-49A43CAB2DB8B^0'
+'D63BA8E634FA1^0'
+'-463980327165A8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'605CD3153DF4CC^0'
+'-49A4ACD40DF1B8^0'
+'D63B792ADB4E58^0'
+'-4639633F94BC4C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6069BB2FC15D64^0'
+'-499E5B7B220AD4^0'
+'D635C9445C40D^0'
+'-463FA4EDB10764^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6076EC2C63E3EC^0'
+'-4998D7BE64C848^0'
+'D62FC454F7A55^0'
+'-4645AA74438008^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6076CCC558E664^0'
+'-49987A34C6099^0'
+'D62FE8A9F191B8^0'
+'-4645C8C8F53D38^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'449BB2C656F474^0'
+'-516CEAC7BAA874^0'
+'E0AC2B20DC6F4^0'
+'-3D0021E673B7A8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'449BCE2085DA4^0'
+'-516D9C594C9634^0'
+'E0ABF18FE93A6^0'
+'-3CFFEA218D47CC^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'449BD73D236684^0'
+'-516D6AD64924B8^0'
+'E0ABFC13084698^0'
+'-3CFFFB41DB8D7E^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44B1C1B2432338^0'
+'-5170F950A72B4C^0'
+'E0A52A49F3C028^0'
+'-3CFBAF0485C2A^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44B030D3005304^0'
+'-51792072981BA^0'
+'E0A0DDE6B52F5^0'
+'-3D0263B675F07^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44B0669D63DEE8^0'
+'-5179990AF45DF^0'
+'E0A0B76BA09FE8^0'
+'-3D0213C8D8886C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4500FE81A8B3D8^0'
+'-515699C0DEED48^0'
+'E08858BA869FC8^0'
+'-3D2F78AE469058^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'45013EF97E1AB^0'
+'-5156ACA3CFC5F8^0'
+'E0883F1A70F768^0'
+'-3D2F74E783F3C6^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4517043581FBC8^0'
+'-515A326EA6652^0'
+'E08170CD7275C^0'
+'-3D2B2DCFD65254^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'45173CE3369A04^0'
+'-515A06F9042C8^0'
+'E081728674EDF8^0'
+'-3D2B214515E18^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4517043581FBC8^0'
+'-515A326EA6652^0'
+'E08170CD7275C^0'
+'-3D2B2DCFD65254^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'45175E50D1BBF4^0'
+'-515A87CC568AA^0'
+'E0814473C76D9^0'
+'-3D2AF9470F0AA4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44E1C2786A50E4^0'
+'-517225C74AADD8^0'
+'E091C1F3623AD8^0'
+'-3D0B710E15311E^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44E203381B5F38^0'
+'-5172B515C1AD04^0'
+'E09170EDD895^0'
+'-3D0B92D984713E^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44E1C2786A50E4^0'
+'-517225C74AADD8^0'
+'E091C1F3623AD8^0'
+'-3D0B710E15311E^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44F7FBB4BAF84^0'
+'-517610047D48F4^0'
+'E08AA66ED9E72^0'
+'-3D074514FA12B4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44F7C2786180E^0'
+'-5175BF2E662978^0'
+'E08ADC0C0A92D8^0'
+'-3D072C66DF3AF2^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44F83FF4B87D48^0'
+'-51761071FF7FFC^0'
+'E08AA6E2B87628^0'
+'-3D06F5B6E5F5E6^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3840BCAAE0002C^9'
+'3840BDC3200008^9'
+'3840BEDADFFFD6^9'
+'3840BFF31^9'
+'3840C10B1FFFC8^9'
+'384134FA700018^9'
+'384136127FFFE^9'
+'3841372A60001^9'
+'38413842800008^9'
+'3841395A600038^9'
+'38413A728FFFE4^9'
+'38413B8A5FFFE4^9'
+'38413CA290000C^9'
+'38413DBA90002^9'
+'38413ED2800004^9'
+'38413FEA800018^9'
+'3841410280002C^9'
+'3841421A7FFFC4^9'
+'38414332900008^9'
+'3841444A7FFFEC^9'
+'3841456290003^9'
+'3841467A800014^9'
+'38414F3A700004^9'
+'384150527FFFCC^9'
+'3841516A5FFFFC^9'
+'384152827FFFF4^9'
+'3841539A600024^9'
+'384154B280001C^9'
+'384155CA7^9'
+'384156E28FFFF8^9'
+'384157FA700028^9'
+'3841591290002^9'
+'38415A2A60002^9'
+'38415B42800018^9'
+'38415C5A5FFFCA^9'
+'38415D727FFFC4^9'
+'38415E8A5FFFF2^9'
+'38415FA27FFFEC^9'
+'384160BA6FFFCE^9'
+'384161D2800014^9'
+'384162EA5FFFC4^9'
+'3841640280003C^9'
+'3841651A70001E^9'
+'384166327FFFE6^9'
+'3841723A5FFFE4^9'
+'3841735290000C^9'
+'3841746A60000C^9'
+'38417582800004^9'
+'3841769A600034^9'
+'384177B280002C^9'
+'384178CA5FFFDE^9'
+'384179E2900008^9'
+'38417AFA700038^9'
+'38417C1290003^9'
+'38417D2A6FFFE2^9'
+'38417E428FFFDC^9'
+'38417F5A5FFFD8^9'
+'38418072900004^9'
+'3841818A6^9'
+'384182A290002C^9'
+'384183BA600028^9'
+'384184D28FFFD6^9'
+'384185EA700004^9'
+'384187027FFFCC^9'
+'3841881A5FFFFC^9'
+'384190DA60002^9'
+'384191F2800018^9'
+'3841930A5FFFCA^9'
+'384194227FFFC4^9'
+'3841953A5FFFF2^9'
+'384196527FFFEC^9'
+'3841976A6FFFCE^9'
+'38419882800014^9'
+'3841999A5FFFC4^9'
+'38419AB280003C^9'
+'38419BCA70001E^9'
+'38419CE27FFFE6^9'
+'38419DFA6FFFC8^9'
+'38419F128FFFC2^9'
+'3841A02A6FFFF^9'
+'3841A1428FFFEA^9'
+'3841A25A700018^9'
+'3841A3727FFFE^9'
+'3840BD27E0002C^9'
+'3840BE40200008^9'
+'3840BF57DFFFD6^9'
+'3840C0701^9'
+'3840C1881FFFC8^9'
+'38413577700018^9'
+'3841368F7FFFE^9'
+'384137A760001^9'
+'384138BF800008^9'
+'384139D7600038^9'
+'38413AEF8FFFE4^9'
+'38413C075FFFE4^9'
+'38413D1F90000C^9'
+'38413E3790002^9'
+'38413F4F800004^9'
+'38414067800018^9'
+'3841417F80002C^9'
+'384142977FFFC4^9'
+'384143AF900008^9'
+'384144C77FFFEC^9'
+'384145DF90003^9'
+'384146F7800014^9'
+'38414FB7700004^9'
+'384150CF7FFFCC^9'
+'384151E75FFFFC^9'
+'384152FF7FFFF4^9'
+'38415417600024^9'
+'3841552F80001C^9'
+'384156477^9'
+'3841575F8FFFF8^9'
+'38415877700028^9'
+'3841598F90002^9'
+'38415AA760002^9'
+'38415BBF800018^9'
+'38415CD75FFFCA^9'
+'38415DEF7FFFC4^9'
+'38415F075FFFF2^9'
+'3841601F7FFFEC^9'
+'384161376FFFCE^9'
+'3841624F800014^9'
+'384163675FFFC4^9'
+'3841647F80003C^9'
+'3841659770001E^9'
+'384166AF7FFFE6^9'
+'384172B75FFFE4^9'
+'384173CF90000C^9'
+'384174E760000C^9'
+'384175FF800004^9'
+'38417717600034^9'
+'3841782F80002C^9'
+'384179475FFFDE^9'
+'38417A5F900008^9'
+'38417B77700038^9'
+'38417C8F90003^9'
+'38417DA76FFFE2^9'
+'38417EBF8FFFDC^9'
+'38417FD75FFFD8^9'
+'384180EF900004^9'
+'384182076^9'
+'3841831F90002C^9'
+'38418437600028^9'
+'3841854F8FFFD6^9'
+'38418667700004^9'
+'3841877F7FFFCC^9'
+'384188975FFFFC^9'
+'3841915760002^9'
+'3841926F800018^9'
+'384193875FFFCA^9'
+'3841949F7FFFC4^9'
+'384195B75FFFF2^9'
+'384196CF7FFFEC^9'
+'384197E76FFFCE^9'
+'384198FF800014^9'
+'38419A175FFFC4^9'
+'38419B2F80003C^9'
+'38419C4770001E^9'
+'38419D5F7FFFE6^9'
+'38419E776FFFC8^9'
+'38419F8F8FFFC2^9'
+'3841A0A76FFFF^9'
+'3841A1BF8FFFEA^9'
+'3841A2D7700018^9'
+'3841A3EF7FFFE^9'
+END_ARRAY 1 830
+TOTAL_ARRAYS 1
+ ~NAIF/SPC BEGIN COMMENTS~
+This CK is for testing with the image: /home/pgiroux/Desktop/f004a47.cub
+
+This CK was generated using the following command: {}
+ ~NAIF/SPC END COMMENTS~
diff --git a/tests/pytests/data/f004a47/vo1_v10.tf b/tests/pytests/data/f004a47/vo1_v10.tf
new file mode 100644
index 0000000..0ce54d5
--- /dev/null
+++ b/tests/pytests/data/f004a47/vo1_v10.tf
@@ -0,0 +1,470 @@
+KPL/FK
+
+Viking Orbiter 1 Frames Kernel
+===============================================================================
+
+   This frame kernel contains the complete set of frame definitions for
+   the Viking Orbiter 1 (VO1) spacecraft including definitions for the
+   spacecraft frame, instrument platform frame, and science instrument
+   frames.
+
+
+Version and Date
+-------------------------------------------------------------------------------
+
+   Version 1.0 -- December 1, 2005 -- Boris Semenov, NAIF
+
+      Initial Release.
+
+
+References
+-------------------------------------------------------------------------------
+
+   1. ``Frames Required Reading''
+
+   2. ``Kernel Pool Required Reading''
+
+   3. ``C-Kernel Required Reading''
+
+   4. VO1 Supplemental Experiment Data Record (SEDR) file, 1976-1980.
+
+   5. Thomas C. Duxbury/JPL, March-July, 1996
+
+
+Contact Information
+-------------------------------------------------------------------------------
+
+   Boris V. Semenov, NAIF/JPL, (818)-354-8136, Boris.Semenov@jpl.nasa.gov
+
+
+Implementation Notes
+-------------------------------------------------------------------------------
+
+   This file is used by the SPICE system as follows: programs that make
+   use of this frame kernel must `load' the kernel, normally during
+   program initialization. The SPICELIB/CSPICE/ICY routine FURNSH loads
+   a kernel file into the pool as shown below.
+
+      CALL FURNSH ( 'frame_kernel_name' )           SPICELIB/FORTRAN
+
+      furnsh_c ( "frame_kernel_name" );             CSPICE/C
+
+      cspice_furnsh, "frame_kernel_name"            ICY/IDL
+
+   This file was created and may be updated with a text editor or word
+   processor.
+
+
+VO1 Frames
+-------------------------------------------------------------------------------
+
+   The following VO1 frames are defined in this kernel file:
+
+           Name                  Relative to           Type       NAIF ID
+      ======================  ===================  ============   =======
+
+   Spacecraft frame:
+   -----------------
+      VO1_SPACECRAFT          rel.to B1950         CK             -27900
+
+   Instrument Platform frame:
+   --------------------------
+      VO1_PLATFORM            rel.to B1950         CK             -27000
+
+   Science Instrument frames:
+   --------------------------
+      VO1_VISA                rel.to PLATFORM      FIXED          -27001
+      VO1_VISA_TD             rel.to PLATFORM      FIXED          -27011
+      VO1_VISB                rel.to PLATFORM      FIXED          -27002
+      VO1_VISB_TD             rel.to PLATFORM      FIXED          -27012
+      VO1_IRTM                rel.to PLATFORM      FIXED          -27003
+      VO1_MAWD                rel.to PLATFORM      FIXED          -27004
+
+
+VO1 Frames Hierarchy
+-------------------------------------------------------------------------------
+
+   The diagram below shows VO1 frames hierarchy:
+
+
+                               "B1950" INERTIAL
+        +-----------------------------------------------------------+
+        |                   |                   |                   |
+        | <--pck            | <--ck             | <--ck             | <--pck
+        |                   |                   |                   |
+        V                   V                   |                   V
+    "IAU_MARS"      "V01_SPACECRAFT"            |              "IAU_EARTH"
+    -----------     ----------------            |              ------------
+                                                |
+                                                |
+                                                V
+                                          "VO1_PLATFORM"
+        +---------------------------------------------------------+
+        |                 |                     |     |     |     |
+        | <--fixed        | <--fixed   fixed--> |     |     |     | <--fixed
+        |                 |                     |     |     |     |
+        V                 V                     V     |     |     V
+    "VO1_IRTM"        "VO1_MAWD"          "VO1_VISA"  |     | "VO1_VISB"
+    ----------        ----------          ----------  |     | ----------
+                                                      |     |
+                                                      |     |
+                                             fixed--> |     | <--fixed
+                                                      |     |
+                                                      V     V
+                                          "VO1_VISA_TD"     "VO1_VISB_TD"
+                                          -------------     -------------
+
+
+Spacecraft Bus Frame
+-------------------------------------------------------------------------------
+
+   The spacecraft frame is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the spacecraft bus frame:
+
+      [TBD]
+
+   Since the S/C bus attitude with respect to an inertial frame is
+   provided by a C kernel (see [3] for more information), this frame is
+   defined as a CK-based frame.
+
+   \begindata
+
+      FRAME_VO1_SPACECRAFT     = -27900
+      FRAME_-27900_NAME        = 'VO1_SPACECRAFT'
+      FRAME_-27900_CLASS       = 3
+      FRAME_-27900_CLASS_ID    = -27900
+      FRAME_-27900_CENTER      = -27
+      CK_-27900_SCLK           = -27
+      CK_-27900_SPK            = -27
+
+   \begintext
+
+
+Instrument Platform Frame
+-------------------------------------------------------------------------------
+
+   The instrument platform frame is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the instrument platform frame:
+
+      [TBD]
+
+   Since the platform attitude with respect to an inertial frame is
+   provided by a C kernel (see [3] for more information), this frame is
+   defined as a CK-based frame.
+
+   \begindata
+
+      FRAME_VO1_PLATFORM       = -27000
+      FRAME_-27000_NAME        = 'VO1_PLATFORM'
+      FRAME_-27000_CLASS       = 3
+      FRAME_-27000_CLASS_ID    = -27000
+      FRAME_-27000_CENTER      = -27
+      CK_-27000_SCLK           = -27
+      CK_-27000_SPK            = -27
+
+   \begintext
+
+
+VISA and VISB Frames
+-------------------------------------------------------------------------------
+
+   The frames for the Visual Imaging Subsystem Camera A (VISA) and
+   Camera B (VISB) -- VO1_VISA and VO1_VISB -- are defined as follows:
+
+      -  Z axis is along the camera boresight;
+
+      -  X axis is along detector lines and points toward the right
+         side of the image;
+
+      -  Y axis completes the right hand frame;
+
+      -  the origin of this frame is located at the camera focal point.
+
+   This diagram illustrates the camera frames:
+
+      [TBD]
+
+   Since the cameras were rigidly mounted on the instrument platform
+   their frames are defined as fixed offset frames with respect to the
+   platform frame.
+
+   The camera orientation with respect to the platform was specified in
+   [4] as the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the following angle values for each of the two cameras:
+
+      VISA:
+
+         CROSS_CONE         =  -0.707350, deg
+         CONE               =  -0.007580, deg
+         RASTER_ORIENTATION =  89.735690, deg
+
+      VISB:
+
+         CROSS_CONE         =   0.681000, deg
+         CONE               =  -0.032000, deg
+         RASTER_ORIENTATION =  90.022800, deg
+
+   These angles are used in the frame definition below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the camera to the platform frame -- see [1].)
+
+   \begindata
+
+      FRAME_VO1_VISA           = -27001
+      FRAME_-27001_NAME        = 'VO1_VISA'
+      FRAME_-27001_CLASS       = 4
+      FRAME_-27001_CLASS_ID    = -27001
+      FRAME_-27001_CENTER      = -27
+      TKFRAME_-27001_SPEC      = 'ANGLES'
+      TKFRAME_-27001_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27001_ANGLES    = ( -0.707350, 0.007580, -89.735690 )
+      TKFRAME_-27001_AXES      = (  1,        2,          3        )
+      TKFRAME_-27001_UNITS     = 'DEGREES'
+
+      FRAME_VO1_VISB           = -27002
+      FRAME_-27002_NAME        = 'VO1_VISB'
+      FRAME_-27002_CLASS       = 4
+      FRAME_-27002_CLASS_ID    = -27002
+      FRAME_-27002_CENTER      = -27
+      TKFRAME_-27002_SPEC      = 'ANGLES'
+      TKFRAME_-27002_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27002_ANGLES    = (  0.681000, 0.032000, -90.022800 )
+      TKFRAME_-27002_AXES      = (  1,        2,          3        )
+      TKFRAME_-27002_UNITS     = 'DEGREES'
+
+   \begintext
+
+   Thomas Duxbury provided a different set of angle values for the cameras
+   (see [5]):
+
+      VISA:
+
+         CROSS_CONE         =  -0.707400, deg
+         CONE               =  -0.007600, deg
+         RASTER_ORIENTATION =  89.735400, deg
+
+      VISB:
+
+         CROSS_CONE         =   0.681300, deg
+         CONE               =  -0.032100, deg
+         RASTER_ORIENTATION =  90.083900, deg
+
+   To make this alignment solution available, two more frames parallel
+   to the camera frames and including the ``_TB'' suffix in the name
+   and defined below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the camera to the platform frame -- see [1].)
+
+   \begindata
+
+      FRAME_VO1_VISA_TD        = -27011
+      FRAME_-27011_NAME        = 'VO1_VISA_TD'
+      FRAME_-27011_CLASS       = 4
+      FRAME_-27011_CLASS_ID    = -27011
+      FRAME_-27011_CENTER      = -27
+      TKFRAME_-27011_SPEC      = 'ANGLES'
+      TKFRAME_-27011_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27011_ANGLES    = ( -0.707400, 0.007600, -89.735400 )
+      TKFRAME_-27011_AXES      = (  1,        2,          3        )
+      TKFRAME_-27011_UNITS     = 'DEGREES'
+
+      FRAME_VO1_VISB_TD        = -27012
+      FRAME_-27012_NAME        = 'VO1_VISB_TD'
+      FRAME_-27012_CLASS       = 4
+      FRAME_-27012_CLASS_ID    = -27012
+      FRAME_-27012_CENTER      = -27
+      TKFRAME_-27012_SPEC      = 'ANGLES'
+      TKFRAME_-27012_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27012_ANGLES    = (  0.681300, 0.032100, -90.083900 )
+      TKFRAME_-27012_AXES      = (  1,        2,          3        )
+      TKFRAME_-27012_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+IRTM Frame
+-------------------------------------------------------------------------------
+
+   The frame for the Infrared Thermal Mapper -- VO1_IRTM -- is defined
+   as follows:
+
+      [TBD]
+
+   This diagram illustrates the IRTM frame:
+
+      [TBD]
+
+   Since the IRTM instrument was rigidly mounted on the instrument
+   platform its frame is defined as fixed offset frames with respect to
+   the platform frame.
+
+   The instrument orientation with respect to the platform can be
+   specified using the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the nominal angle values:
+
+      CROSS_CONE         =   0.0, deg
+      CONE               =   0.0, deg
+      RASTER_ORIENTATION =  90.0, deg
+
+   These angles are used in the frame definition below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the instrument to the platform frame -- see
+   [1].)
+
+   \begindata
+
+      FRAME_VO1_IRTM           = -27003
+      FRAME_-27003_NAME        = 'VO1_IRTM'
+      FRAME_-27003_CLASS       = 4
+      FRAME_-27003_CLASS_ID    = -27003
+      FRAME_-27003_CENTER      = -27
+      TKFRAME_-27003_SPEC      = 'ANGLES'
+      TKFRAME_-27003_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27003_ANGLES    = (  0.0, 0.0, -90.0 )
+      TKFRAME_-27003_AXES      = (  1,   2,     3   )
+      TKFRAME_-27003_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+MAWD Frame
+-------------------------------------------------------------------------------
+
+   The frame for the Mars Atmosphere Water Detector (MAWD) -- VO1_MAWD
+   -- is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the MAWD frame:
+
+      [TBD]
+
+   Since the MAWD instrument was rigidly mounted on the instrument
+   platform its frame is defined as fixed offset frames with respect to
+   the platform frame.
+
+   The instrument orientation with respect to the platform can be
+   specified using the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the nominal angle values:
+
+      CROSS_CONE         =   0.0, deg
+      CONE               =   0.0, deg
+      RASTER_ORIENTATION =  90.0, deg
+
+   These angles are used in the frame definition below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the instrument to the platform frame -- see
+   [1].)
+
+   \begindata
+
+      FRAME_VO1_MAWD           = -27004
+      FRAME_-27004_NAME        = 'VO1_MAWD'
+      FRAME_-27004_CLASS       = 4
+      FRAME_-27004_CLASS_ID    = -27004
+      FRAME_-27004_CENTER      = -27
+      TKFRAME_-27004_SPEC      = 'ANGLES'
+      TKFRAME_-27004_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27004_ANGLES    = (  0.0, 0.0, -90.0 )
+      TKFRAME_-27004_AXES      = (  1,   2,     3   )
+      TKFRAME_-27004_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+Viking Orbiter 1 NAIF ID Codes -- Definition Section
+========================================================================
+
+   This section contains name to NAIF ID mappings for the VO1. Once the
+   contents of this file is loaded into the KERNEL POOL, these mappings
+   become available within SPICE, making it possible to use names
+   instead of ID code in the high level SPICE routine calls.
+
+   Spacecraft and its structures:
+   ------------------------------
+
+      VIKING ORBITER 1           -27
+      VO1                        -27
+
+      VO1_SPACECRAFT_BUS         -27900
+      VO1_SC_BUS                 -27900
+      VO1_SPACECRAFT             -27900
+
+      VO1_INSTRUMENT_PLATFORM    -27000
+      VO1_PLATFORM               -27000
+
+   Science Instruments:
+   --------------------
+
+      VO1_VISA                   -27001
+      VO1_VISB                   -27002
+
+      VO1_IRTM                   -27003
+
+      VO1_MAWD                   -27004
+
+   The mappings summarized in this table are implemented by the keywords
+   below.
+
+   \begindata
+
+      NAIF_BODY_NAME += ( 'VIKING ORBITER 1'          )
+      NAIF_BODY_CODE += ( -27                         )
+
+      NAIF_BODY_NAME += ( 'VO1'                       )
+      NAIF_BODY_CODE += ( -27                         )
+
+      NAIF_BODY_NAME += ( 'VO1_SPACECRAFT_BUS'        )
+      NAIF_BODY_CODE += ( -27900                      )
+
+      NAIF_BODY_NAME += ( 'VO1_SC_BUS'                )
+      NAIF_BODY_CODE += ( -27900                      )
+
+      NAIF_BODY_NAME += ( 'VO1_SPACECRAFT'            )
+      NAIF_BODY_CODE += ( -27900                      )
+
+      NAIF_BODY_NAME += ( 'VO1_INSTRUMENT_PLATFORM'   )
+      NAIF_BODY_CODE += ( -27000                      )
+
+      NAIF_BODY_NAME += ( 'VO1_PLATFORM'              )
+      NAIF_BODY_CODE += ( -27000                      )
+
+      NAIF_BODY_NAME += ( 'VO1_VISA'                  )
+      NAIF_BODY_CODE += ( -27001                      )
+
+      NAIF_BODY_NAME += ( 'VO1_VISB'                  )
+      NAIF_BODY_CODE += ( -27002                      )
+
+      NAIF_BODY_NAME += ( 'VO1_IRTM'                  )
+      NAIF_BODY_CODE += ( -27003                      )
+
+      NAIF_BODY_NAME += ( 'VO1_MAWD'                  )
+      NAIF_BODY_CODE += ( -27004                      )
+
+   \begintext
diff --git a/tests/pytests/data/f004b65/f004b65_0.xsp b/tests/pytests/data/f004b65/f004b65_0.xsp
new file mode 100644
index 0000000..54652f2
--- /dev/null
+++ b/tests/pytests/data/f004b65/f004b65_0.xsp
@@ -0,0 +1,706 @@
+DAFETF NAIF DAF ENCODED TRANSFER FILE
+'DAF/SPK '
+'2'
+'6'
+'SPKMERGE                                                    '
+BEGIN_ARRAY 1 39
+'DE-0721LE-0721                          '
+'-2BFE07FA3A1D38^8'
+'-2BFDFCFA8D5078^8'
+'A'
+'0'
+'1'
+'2'
+39
+'-2C00B8C^8'
+'A8C^5'
+'-14091ED46CC407^5'
+'1E2FD6E41E319E^4'
+'E85ACADB77B7F^1'
+'25A3B641E1EAAC^-1'
+'A8E7A7C3CD0A08^-2'
+'-1734554746EA2B^-3'
+'AA578CDDD22198^-4'
+'-163554A5F66A6F^-4'
+'21A6FF059C37AE^-5'
+'-238B2F8C07C5E2^-6'
+'1192BEA297C04B^-7'
+'-78898540556C78^5'
+'-10FC81DB0AFADF^4'
+'12DCBF60AB27E3^2'
+'-127BB1275A0CC9^0'
+'8DA7DA948F7FC8^-2'
+'-5F4CD843A7E704^-3'
+'BDA3229EC85CB8^-4'
+'-67BFF958750CE4^-5'
+'-5E2D59EBF1F224^-6'
+'209D16633310E4^-6'
+'-435E0A8F217944^-7'
+'-33C5B327552E02^5'
+'-8343110E36F3C^3'
+'7E52A1E2027D18^1'
+'-98089D3F6A2A78^-1'
+'3E33878A1B4BAA^-2'
+'-3736C2B268888A^-3'
+'52B6BD204D444C^-4'
+'-11D5BBC52DA729^-5'
+'-6A311EB04CCFEC^-6'
+'151970210867D2^-6'
+'-25E6F1A3196848^-7'
+'-2C0B44C^8'
+'1518^6'
+'23^2'
+'1^1'
+END_ARRAY 1 39
+BEGIN_ARRAY 2 39
+'DE-0721LE-0721                          '
+'-2BFE07FA3A1D38^8'
+'-2BFDFCFA8D5078^8'
+'4'
+'0'
+'1'
+'2'
+39
+'-2BF62CC^8'
+'1518^6'
+'-DF878892D6401^7'
+'9718448DF9C868^6'
+'FBA79F5520B038^5'
+'-C05DDD555E20D^3'
+'-1425CD9C184653^3'
+'-32C39258A075C2^1'
+'-A45D97977ADA68^-1'
+'2A05DF0531F4B6^-2'
+'1DC17AC24B98E9^-3'
+'-1EDD64DF08258F^-4'
+'-2206DB059D381A^-5'
+'-38DF87DDF839C8^7'
+'-1971215E6F7983^7'
+'3FA6791020B828^5'
+'50642D9C35FD2^4'
+'2FD1DB0728D962^2'
+'-1CF5075C808D43^1'
+'-F7F83D189319B8^-1'
+'-5A3422DA6D88B8^-2'
+'-16A87C7EA397CB^-3'
+'-B360CAB15246A^-5'
+'4391215DCC0CF8^-5'
+'-14048B5C171D98^7'
+'-BECBF32F4ED56^6'
+'1660286274D01^5'
+'2532AB0160F3B4^4'
+'1EA9FAB72692C6^2'
+'-BE927DF96A2FB8^0'
+'-6D3178EAC5977^-1'
+'-29F868D24B7448^-2'
+'-B66A385488D268^-4'
+'-7CFA793BDE605C^-5'
+'208B3FE003EFB8^-5'
+'-2C0B44C^8'
+'2A3^6'
+'23^2'
+'1^1'
+END_ARRAY 2 39
+BEGIN_ARRAY 3 54
+'MAR097                                  '
+'-2BFE07FA3A1D38^8'
+'-2BFDFCFA8D5078^8'
+'1F3'
+'4'
+'1'
+'3'
+54
+'-2BFDEB9^8'
+'2A3^4'
+'61BE922C509C9^-4'
+'-194A2F2E343BC1^-3'
+'-78D71D95884048^-3'
+'15114C37207C8F^-3'
+'1335B0D59627CE^-3'
+'-161B50E8D0E778^-4'
+'-108FEE361F01BE^-4'
+'-69696091F0CAC^-6'
+'-2EDFFE465DF8B8^-3'
+'85B6817AC833C8^-3'
+'-451B37DA5A649^-3'
+'-335DD079D7AEF2^-3'
+'ADB5A5E88BCA^-4'
+'49963554FE18C8^-4'
+'-67C5A6980E65E8^-5'
+'-3181A861F1236^-5'
+'-1A205858DF8E7E^-3'
+'566C973D571948^-3'
+'1DB964D092DCD4^-3'
+'-27022C16DEFBAE^-3'
+'-4D3E56D8240F44^-4'
+'3365727B693D4C^-4'
+'5B1B5AD52CEB6^-5'
+'-16B93F7BBC657^-5'
+'BB0C173BD49498^-7'
+'-81BF1A4A585F9^-6'
+'2A904CCE9A3A66^-6'
+'35929D04F80802^-6'
+'-56072D46377394^-7'
+'-4B6065162B443C^-7'
+'-22FB25BC60983C^-8'
+'0^0'
+'79EA6CE63256^-8'
+'-49BDBFA087265^-6'
+'-6478A41E1262A4^-6'
+'1F187C12A38B46^-6'
+'106A7DF60CC07F^-6'
+'-1D8473A744F2E4^-7'
+'-106DC6DBDB35D6^-7'
+'0^0'
+'-5C003C9CCD7F2^-7'
+'201091ABE2FF2^-6'
+'-4D0DF100B4B07C^-6'
+'-D0729C7E62E7F^-7'
+'BB625F4C2BD29^-7'
+'19EA32DE337627^-7'
+'-78A76EA7BF5AB^-8'
+'0^0'
+'-2BFE15C^8'
+'546^4'
+'32^2'
+'1^1'
+END_ARRAY 3 54
+BEGIN_ARRAY 4 505
+'09aug76                                 '
+'-2BFE07FA3A1D38^8'
+'-2BFDFCFA8D5078^8'
+'-1E'
+'4'
+'E'
+'1'
+505
+'-2BFE0511CD7FC8^8'
+'38C06AAFE3^2'
+'7180D55FC6^2'
+'AA41400FA9^2'
+'E301AABF8C^2'
+'11BC2156F6F^3'
+'18D42EACF358^3'
+'1FEC3C02EFC^3'
+'27044958EC28^3'
+'2E1C56AEE89^3'
+'35346404E4F8^3'
+'3C4C715AE16^3'
+'43647EB0DDC8^3'
+'4A7C8C06DA3^3'
+'5194995CD698^3'
+'58ACA6B2D3^3'
+'F97D6C1861EAF^3'
+'12459F675FD6B2^1'
+'-E6178419391BD^3'
+'197FAFA0E2745E^1'
+'-8CBEA08185DFA8^3'
+'2F64F5DCBE9AF4^1'
+'-37315199802532^-2'
+'-3049B3B0B8ED68^-3'
+'-197A601BA51497^-4'
+'15ED44250FA4C5^-5'
+'6F425913EC5F74^-6'
+'E5B475F5B582D^-7'
+'E3017A8D952B38^-8'
+'-43C0EF89A8D768^-8'
+'-24BAE33C653CB2^-8'
+'-AB2D99866E1E78^-9'
+'-1D3AFCFA66E9E1^-9'
+'2F43184E7A377^-A'
+'52B4313ACD19F8^-A'
+'2604879C84C3B^-A'
+'3017C^-B'
+'32EC0E333F02E2^-2'
+'C9E89B030045B^-4'
+'-10C277357BA07C^-4'
+'-2F01B177BDBFD^-5'
+'-41ACA99A8D0DF8^-6'
+'-8D7741BADE081^-8'
+'15D565DDE5539C^-7'
+'6ECFCDFA4B5D18^-8'
+'15B0E276DF76BE^-8'
+'159116EA2F6DDC^-9'
+'-13F8E8388867D6^-9'
+'-C3404EFC1CA288^-A'
+'-3CF30EFFCAFD78^-A'
+'1931A603C25D1B^-A'
+'0^0'
+'1F197B5C13E953^-2'
+'-105D9240D8FD52^-3'
+'-28A396ED46F94A^-4'
+'-30F826B0CFF256^-5'
+'-C22E862BF8A4A8^-7'
+'94C108DF6B4878^-7'
+'27F73C9410BB^-7'
+'692EFE2951074C^-8'
+'43AB84046117^-9'
+'-59CC0A95B621E8^-9'
+'-304310BBE37788^-9'
+'-F683CAFC36471^-A'
+'-28FD1928AC7E8E^-A'
+'A477EA477E3B5^-B'
+'AAA06^-B'
+'F^1'
+'E^1'
+'D^1'
+'E^1'
+'-2BFE02A188EA38^8'
+'38C06AAFE3^2'
+'7180D55FC6^2'
+'AA41400FA9^2'
+'E301AABF8C^2'
+'11BC2156F6F^3'
+'15482801F52^3'
+'18D42EACF35^3'
+'1C603557F18^3'
+'1FEC3C02EFB^3'
+'237842ADEDE^3'
+'27044958EC1^3'
+'2A905003EA4^3'
+'2E1C56AEE87^3'
+'31A85D59E6A^3'
+'38C06AAFE308^3'
+'11994D8EB00BAE^4'
+'71F72F6E0E0644^0'
+'-9E244E4223E7C8^3'
+'21873175849D7E^1'
+'-14827AD2A00212^3'
+'32988BA4597BEE^1'
+'-5B1DF1213B3AD8^-2'
+'-31467BEEB48DC8^-3'
+'1F31A48647430A^-4'
+'8828204A1EB688^-5'
+'8E55BFF8753768^-6'
+'-17CF3474C5ADC8^-6'
+'-843F8C46091C7^-7'
+'-B528156DE418E8^-8'
+'529CA959FD98F8^-8'
+'2A092DDA96ADF8^-8'
+'4BE9460E3C037^-9'
+'-7B7171^-9'
+'-83B8F5C^-9'
+'-558E9C8^-9'
+'0^0'
+'3339423313A06^-2'
+'-E22B2197238C9^-4'
+'-399ACEA0479764^-4'
+'-32604500E04146^-5'
+'694D2ADEC48FA^-6'
+'1FB97F6841C749^-6'
+'26A4BB01DA8072^-7'
+'-D5F17C0C412E98^-8'
+'-5C329303C79DD^-8'
+'-86BC9247BB07B8^-9'
+'B9892B6B475808^-9'
+'9D14EDF5DAA06^-9'
+'43AC5FA^-9'
+'D741C^-B'
+'0^0'
+'6837A95B55F79^-3'
+'-35947323D5988^-3'
+'-38DD1FF3E941A6^-4'
+'1A541AF368206E^-5'
+'F30BB0FB6D84A^-6'
+'1A636785D9E044^-6'
+'-28F0538E550FF8^-7'
+'-1993D6FB9473A8^-7'
+'-37CB8D3CDCE23C^-8'
+'17F98A0B81ACDC^-8'
+'13B8F03C151842^-8'
+'62894F04^-9'
+'-66B469^-9'
+'0^0'
+'0^0'
+'E^1'
+'D^1'
+'D^1'
+'C^1'
+'-2BFE0130A634C2^8'
+'1C603557F18^2'
+'38C06AAFE3^2'
+'5520A007D48^2'
+'7180D55FC6^2'
+'8DE10AB7B78^2'
+'AA41400FA9^2'
+'C6A175679A8^2'
+'FF61E0177D8^2'
+'138224AC7608^3'
+'170E2B577438^3'
+'1A9A32027268^3'
+'1E2638AD7098^3'
+'21B23F586EC8^3'
+'253E46036CF8^3'
+'28CA4CAE6B28^3'
+'11D8E7F35026BA^4'
+'-1D3B47A0EF0206^0'
+'-6AB394466E0044^3'
+'25B1BF028CDE1^1'
+'344A523E092668^3'
+'320E1ECC4D4872^1'
+'-69B88AE5FE6464^-2'
+'-AB806F98216578^-4'
+'170536A6F0283A^-4'
+'E126077059D788^-6'
+'-103A85434268A^-6'
+'-20D8539F0824F8^-7'
+'7DDBCC90E7843C^-9'
+'774943F3640A08^-9'
+'1065E2090F5E39^-9'
+'-1290556FF903A2^-A'
+'-3C91ADF4CCCCCC^-A'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'27943FDC85DD28^-2'
+'-141906E3926759^-3'
+'-E872A5DEACE968^-5'
+'66AD29B4E7EE7^-6'
+'11E7971C2CFCCB^-6'
+'19D0994651BF32^-8'
+'-27716C571C1D86^-8'
+'-3B7F3356476CBC^-9'
+'3647BCD6C5BF2A^-A'
+'46FC3645625134^-A'
+'1E323A09265D3C^-A'
+'-BB0271801527^-C'
+'-A0FEC2B50F7578^-B'
+'-5773E^-B'
+'0^0'
+'-1387EA04A1A5A1^-2'
+'-22DCA00D0A5FBE^-3'
+'-3C361982E54E12^-5'
+'12974D0A7CAA16^-5'
+'D25CAB6230D67^-7'
+'-14D5441A988592^-7'
+'-31C53CC4A30266^-8'
+'167590357689E^-A'
+'12F6CE9BEC45B^-9'
+'5F3F71D602F9B8^-A'
+'3DC7E1624BAF2^-B'
+'-138F14C77D1C68^-A'
+'-B0907F82E00278^-B'
+'1824D^-B'
+'0^0'
+'E^1'
+'A^1'
+'D^1'
+'D^1'
+'-2BFE0014E41F52^8'
+'1C603557F18^2'
+'38C06AAFE3^2'
+'5520A007D48^2'
+'7180D55FC6^2'
+'8DE10AB7B78^2'
+'AA41400FA9^2'
+'C6A175679A8^2'
+'E301AABF8C^2'
+'FF61E0177D8^2'
+'11BC2156F6F^3'
+'138224AC7608^3'
+'15482801F52^3'
+'170E2B577438^3'
+'1A9A32027268^3'
+'1FEC3C02EFB^3'
+'1176C8A23BB7BC^4'
+'-940BE7973C9E18^0'
+'-3F94A89944FA82^3'
+'27EF6CD718E7C6^1'
+'6ABE553FFE10A4^3'
+'2FF2C375E1E19E^1'
+'-6AF34B019C737C^-2'
+'5842A4512CF3D8^-4'
+'1AE60EB2AD7DA7^-4'
+'-14EC6E431DEEAA^-6'
+'-1C647C819BA785^-6'
+'-2FA811A6D48E14^-8'
+'4378D5098B1B3^-8'
+'1085C727634F5F^-9'
+'-14932A9AA63525^-9'
+'1AA8AFA7955F26^-A'
+'17DF7CA2E8BA2F^-A'
+'-5CD54^-B'
+'0^0'
+'0^0'
+'0^0'
+'186D321415B062^-2'
+'-1AE7B2EADFCF4E^-3'
+'-71253E61D8DCA^-5'
+'F8F9191C25739^-6'
+'97B2991C4A2288^-7'
+'-183E8A0F68E3CF^-7'
+'-1C3D983CE3A362^-8'
+'4F6F6A379396C4^-9'
+'70CA4B2CE58878^-A'
+'-395115BDE76348^-A'
+'-192CE78D7F971^-B'
+'8B2B2^-B'
+'0^0'
+'0^0'
+'0^0'
+'-2909E89D6039A6^-2'
+'-20D228F5F40BFE^-3'
+'91F31EF79941C^-5'
+'144E972122357F^-5'
+'-6F89B42F7D0E44^-7'
+'-23319AB71BBC5C^-7'
+'98B3240221F37^-9'
+'770C2F652EC7B^-9'
+'-670C5299C66108^-A'
+'-3871D5E3015374^-A'
+'133C69E682DF3C^-A'
+'78A8E^-B'
+'-34DFC^-B'
+'C292^-C'
+'0^0'
+'E^1'
+'B^1'
+'B^1'
+'D^1'
+'-2BFDFF31E27492^8'
+'1C603557F18^2'
+'38C06AAFE3^2'
+'5520A007D48^2'
+'7180D55FC6^2'
+'8DE10AB7B78^2'
+'AA41400FA9^2'
+'C6A175679A8^2'
+'E301AABF8C^2'
+'FF61E0177D8^2'
+'11BC2156F6F^3'
+'138224AC7608^3'
+'15482801F52^3'
+'170E2B577438^3'
+'18D42EACF35^3'
+'1C603557F18^3'
+'10CA1606687D98^4'
+'-F084F3EFBCD988^0'
+'-1BAE6F78DE9C63^3'
+'28E77CD3F79784^1'
+'9420444AC44F58^3'
+'2D40A80523B9F^1'
+'-64961E97B09CB^-2'
+'11FBFC4DA1BD08^-3'
+'167DDF8DF01FD3^-4'
+'-E0BDB10F8C5F18^-6'
+'-1518F1BFFAF596^-6'
+'1A7080BEC7A47A^-7'
+'2DAA8292A64442^-8'
+'-5107D017A6FDE^-9'
+'-A9B8336DB8592^-A'
+'-4817086F643BF^-B'
+'E9D8^-C'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'A768B491D5EBE^-3'
+'-1C1C147C778344^-3'
+'140C5CB67C6699^-5'
+'107CBB4F9E6859^-5'
+'-4280A675C3CF2^-7'
+'-1A9C9CFC4A67B8^-7'
+'D29C66AF6355C^-9'
+'4F60A485B54258^-9'
+'-1AB080C5B6551F^-A'
+'-9A4B6^-B'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'-37A1812E588B9^-2'
+'-19C4A7A4228AAE^-3'
+'1163409B8C6D55^-4'
+'CA57E7F20E4DD8^-6'
+'-146F34CB6F4AEB^-6'
+'-11B33EC7277DE1^-7'
+'3202FCCBEF2F3^-8'
+'3418301BF5F7B8^-9'
+'-93031D2DEC777^-A'
+'-1427C4956D38D^-A'
+'-B599A^-B'
+'2E74A197D20C4^-B'
+'0^0'
+'0^0'
+'0^0'
+'C^1'
+'A^1'
+'9^1'
+'B^1'
+'-2BFDFE16205F22^8'
+'1C603557F18^2'
+'38C06AAFE3^2'
+'5520A007D48^2'
+'7180D55FC6^2'
+'8DE10AB7B78^2'
+'AA41400FA9^2'
+'C6A175679A8^2'
+'E301AABF8C^2'
+'FF61E0177D8^2'
+'11BC2156F6F^3'
+'138224AC7608^3'
+'15482801F52^3'
+'170E2B577438^3'
+'18D42EACF35^3'
+'1A9A32027268^3'
+'F8478FE99C543^3'
+'-158307F49D5A69^1'
+'11D7348475383^3'
+'290ADE5EBCC4D4^1'
+'C3F8C253AF0BC8^3'
+'28F0A5199BD012^1'
+'-557053DB609B08^-2'
+'1C3C7A8CA9AA3^-3'
+'AE75CB63EE6158^-5'
+'-143995D31646DB^-5'
+'-6170EB789200C^-8'
+'20390C4866EADC^-7'
+'-143ABB24B057C9^-8'
+'-58F2A7CC28BE78^-9'
+'9A4CCF4CA9016^-A'
+'19C3CF7909BC4^-A'
+'-7D044^-B'
+'-DCB4^-C'
+'0^0'
+'0^0'
+'0^0'
+'-60A3C490ED624^-3'
+'-1840924CE2C4A1^-3'
+'981EE8DB4B5678^-5'
+'996CF991598D8^-6'
+'-EAA270A68A03D^-7'
+'-69DC8CE32202E4^-8'
+'268BB83425528C^-8'
+'-517158F5CB2D6^-A'
+'-A6C7168DB6552^-A'
+'9BF1618^-B'
+'56CFDD^-B'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'-438FD27941FA48^-2'
+'-D5F37AB582B4D8^-4'
+'14893E291E638E^-4'
+'-10F9618147DF76^-6'
+'-1432807934F3FE^-6'
+'D96D0A1E2E391^-8'
+'25F7D442213F86^-8'
+'-46A24222654638^-9'
+'-726BF30430AF9^-A'
+'2217736A92C73^-A'
+'19B92^-B'
+'-2EA68^-B'
+'-76BC^-C'
+'0^0'
+'0^0'
+'D^1'
+'B^1'
+'A^1'
+'C^1'
+'-2BFDFBDE9C3444^8'
+'38C06AAFE3^2'
+'7180D55FC6^2'
+'AA41400FA9^2'
+'E301AABF8C^2'
+'11BC2156F6F^3'
+'15482801F52^3'
+'18D42EACF35^3'
+'1C603557F18^3'
+'1E2638AD7098^3'
+'1FEC3C02EFB^3'
+'21B23F586EC8^3'
+'237842ADEDE^3'
+'253E46036CF8^3'
+'27044958EC1^3'
+'28CA4CAE6B28^3'
+'BD658485F5D81^3'
+'-1EBBC341D1982B^1'
+'6A97DC2D4B1B2C^3'
+'268C0F53834436^1'
+'113EAFB4C16F68^4'
+'1F242B55B582BB^1'
+'-2FE33B775F79DA^-2'
+'38C3C26F4B1984^-3'
+'-1A76B56B445D6C^-4'
+'-40A2234B493AA^-5'
+'D3E1E6EE869E98^-6'
+'-6DC448F679489^-7'
+'-5A393082FD1728^-7'
+'14145256598EB7^-7'
+'1946C24DC0E467^-8'
+'-1C146E7EA13A8B^-8'
+'3B1A4B210B565C^-9'
+'27D4D5E444443^-9'
+'-BDD0483F1565C^-A'
+'-D180FC^-A'
+'0^0'
+'-1ADD7F8B18AC5E^-2'
+'-1404D85FE805BD^-3'
+'2C95474FFDACD^-4'
+'-1E232A91C155FB^-5'
+'-621E86C755BEB^-6'
+'17EE9243616981^-6'
+'-93C9AEA13D64A^-8'
+'-F46F1735B2D84^-8'
+'36A2D8D1B2BB9C^-8'
+'6BDB16B64C4D8C^-9'
+'-67EEB18133702C^-9'
+'A9D3CFF4A9799^-A'
+'FA2631^-A'
+'128669^-A'
+'0^0'
+'-45CAD8D934DC2^-2'
+'C3824460B4EDD8^-4'
+'2A3BC4D5456B98^-4'
+'-55FCB133996818^-5'
+'E235B2467E142^-7'
+'1BBEA54862944^-6'
+'-4B0537303BCEE4^-7'
+'-6DC7CDDB1B20C^-8'
+'599E561EC7A5F^-8'
+'-962619419F9658^-9'
+'-593EBD334279CC^-9'
+'229C0AB29A6F78^-9'
+'ACD89C^-A'
+'-30B294^-A'
+'0^0'
+'E^1'
+'D^1'
+'D^1'
+'D^1'
+'-2BFE0511CD7FB6^8'
+'-2BFE02A188E9F6^8'
+'-2BFE0130A63498^8'
+'-2BFE0014E41F22^8'
+'-2BFDFF31E2747E^8'
+'-2BFDFE16205F06^8'
+'-2BFDFBDE9C341A^8'
+'7^1'
+END_ARRAY 4 505
+TOTAL_ARRAYS 4
+ ~NAIF/SPC BEGIN COMMENTS~
+; /home/pgiroux/Desktop/f004b65/f004b65_0.bsp LOG FILE
+
+; Created 2019-09-30/11:09:12.00.
+;
+; BEGIN SPKMERGE COMMANDS
+
+LEAPSECONDS_KERNEL   = /usgs/cpkgs/isis3/data/base/kernels/lsk/naif0012.tls
+
+SPK_KERNEL           = /home/pgiroux/Desktop/f004b65/f004b65_0.bsp
+  SOURCE_SPK_KERNEL  = /usgs/cpkgs/isis3/data/base/kernels/spk/mar097.bsp
+    INCLUDE_COMMENTS = NO
+    BODIES           = 4, 10, 499
+    BEGIN_TIME       = 1976 AUG 12 00:57:58.590
+    END_TIME         = 1976 AUG 12 01:44:54.265
+  SOURCE_SPK_KERNEL  = /usgs/cpkgs/isis3/data/viking2/kernels/spk/vo2_rcon.bsp
+    INCLUDE_COMMENTS = NO
+    BODIES           = -30
+    BEGIN_TIME       = 1976 AUG 12 00:57:58.590
+    END_TIME         = 1976 AUG 12 01:44:54.265
+
+; END SPKMERGE COMMANDS
+ ~NAIF/SPC END COMMENTS~
diff --git a/tests/pytests/data/f004b65/f004b65_isis3.lbl b/tests/pytests/data/f004b65/f004b65_isis3.lbl
new file mode 100644
index 0000000..c0f4dfc
--- /dev/null
+++ b/tests/pytests/data/f004b65/f004b65_isis3.lbl
@@ -0,0 +1,103 @@
+Object = IsisCube
+  Object = Core
+    StartByte   = 65537
+    Format      = Tile
+    TileSamples = 1204
+    TileLines   = 1056
+
+    Group = Dimensions
+      Samples = 1204
+      Lines   = 1056
+      Bands   = 1
+    End_Group
+
+    Group = Pixels
+      Type       = UnsignedByte
+      ByteOrder  = Lsb
+      Base       = 0.0
+      Multiplier = 1.0
+    End_Group
+  End_Object
+
+  Group = Instrument
+    SpacecraftName       = VIKING_ORBITER_2
+    InstrumentId         = VISUAL_IMAGING_SUBSYSTEM_CAMERA_A
+    TargetName           = MARS
+    StartTime            = 1976-08-12T01:28:18
+    ExposureDuration     = 0.033940 <seconds>
+    SpacecraftClockCount = 46570746
+    FloodModeId          = ON
+    GainModeId           = HIGH
+    OffsetModeId         = ON
+  End_Group
+
+  Group = Archive
+    DataSetId       = VO1/VO2-M-VIS-2-EDR-V2.0
+    ProductId       = 004B65
+    MissonPhaseName = PRIMARY_MISSION
+    ImageNumber     = 46570746
+    OrbitNumber     = 4
+  End_Group
+
+  Group = BandBin
+    FilterName = GREEN
+    FilterId   = 5
+    Center     = 0.53 <micrometers>
+    Width      = 0.1 <micrometers>
+  End_Group
+
+  Group = Kernels
+    NaifFrameCode = -30001
+    CameraVersion = 1
+  End_Group
+
+  Group = Reseaus
+    Line     = (2, 6, 9, 12, 14, 15, 17, 18, 20, 21, 22, 131, 132, 135, 138,
+                140, 142, 143, 145, 146, 147, 149, 150, 260, 263, 265, 267,
+                269, 271, 272, 274, 275, 277, 278, 389, 390, 393, 395, 397,
+                398, 400, 401, 403, 404, 406, 407, 518, 520, 523, 524, 526,
+                528, 529, 531, 532, 534, 536, 647, 648, 650, 652, 654, 656,
+                657, 658, 660, 661, 663, 664, 776, 778, 780, 782, 783, 785,
+                786, 788, 789, 791, 793, 905, 906, 908, 910, 911, 913, 914,
+                915, 917, 918, 920, 921, 1034, 1035, 1037, 1039, 1040, 1041,
+                1043, 1044, 1045, 1046, 1049)
+    Sample   = (25, 142, 259, 375, 491, 606, 722, 838, 953, 1069, 1184, 25,
+                84, 200, 316, 432, 548, 663, 778, 894, 1009, 1124, 1181, 25,
+                142, 258, 374, 489, 604, 720, 835, 950, 1065, 1180, 26, 84,
+                200, 316, 431, 546, 662, 777, 892, 1007, 1122, 1179, 26, 142,
+                258, 373, 489, 604, 719, 834, 949, 1064, 1179, 26, 84, 200,
+                316, 431, 546, 661, 776, 891, 1006, 1121, 1177, 25, 142, 257,
+                373, 488, 603, 718, 833, 948, 1063, 1177, 24, 83, 199, 315,
+                430, 545, 660, 775, 890, 1005, 1120, 1177, 23, 140, 256, 371,
+                487, 602, 717, 832, 947, 1062, 1176)
+    Type     = (1, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+                5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5,
+                5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5,
+                5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5,
+                5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6)
+    Valid    = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
+    Template = $viking2/reseaus/vo2.visa.template.cub
+    Status   = Nominal
+  End_Group
+End_Object
+
+Object = Label
+  Bytes = 65536
+End_Object
+
+Object = History
+  Name      = IsisCube
+  StartByte = 1336961
+  Bytes     = 428
+End_Object
+
+Object = OriginalLabel
+  Name      = IsisCube
+  StartByte = 1337389
+  Bytes     = 2052
+End_Object
+End
diff --git a/tests/pytests/data/f004b65/f004b65_pds3.lbl b/tests/pytests/data/f004b65/f004b65_pds3.lbl
new file mode 100644
index 0000000..359c0ac
--- /dev/null
+++ b/tests/pytests/data/f004b65/f004b65_pds3.lbl
@@ -0,0 +1,1633 @@
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+/*          FILE FORMAT AND LENGTH */
+RECORD_TYPE                      = VARIABLE_LENGTH
+RECORD_BYTES                     = 1204
+FILE_RECORDS                     = 2177
+LABEL_RECORDS                    = 61
+/*          POINTERS TO START RECORDS OF MAJOR OBJECTS IN FILE */
+^IMAGE_HISTOGRAM                 = 62
+^ENCODING_HISTOGRAM              = 63
+^ENGINEERING_TABLE               = 65
+^LINE_HEADER_TABLE               = 66
+^IMAGE                           = 1122
+/*          IMAGE DESCRIPTION */
+DATA_SET_ID                      = 'VO1/VO2-M-VIS-2-EDR-V2.0'
+SPACECRAFT_NAME                  = VIKING_ORBITER_2
+MISSION_PHASE_NAME               = PRIMARY_MISSION
+TARGET_NAME                      = MARS
+IMAGE_ID                         = '004B65'
+IMAGE_NUMBER                     = 46570746
+IMAGE_TIME                       = 1976-08-12T01:28:18Z
+EARTH_RECEIVED_TIME              = 1976-08-13T01:00:48Z
+ORBIT_NUMBER                     = 4
+INSTRUMENT_NAME                  = VISUAL_IMAGING_SUBSYSTEM_CAMERA_A
+GAIN_MODE_ID                     = HIGH
+FLOOD_MODE_ID                    = ON
+OFFSET_MODE_ID                   = ON
+FILTER_NAME                      = GREEN
+EXPOSURE_DURATION                = 0.033940 <SECONDS>
+NOTE                             = "HIGH RESOLUTION MAPPING SEQUENCE OF
+     THE B2 LANDING SITE"
+/*          DESCRIPTION OF THE OBJECTS CONTAINED IN FILE */
+OBJECT                           = IMAGE_HISTOGRAM
+ ITEMS                           = 256
+ ITEM_TYPE                       = VAX_INTEGER
+ ITEM_BITS                       = 32
+END_OBJECT
+OBJECT                           = ENCODING_HISTOGRAM
+ ITEMS                           = 511
+ ITEM_TYPE                       = VAX_INTEGER
+ ITEM_BITS                       = 32
+END_OBJECT
+OBJECT                           = ENGINEERING_TABLE
+ ROWS                            = 1
+ ROW_BYTES                       = 152
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+
+OBJECT                         = ENGINEERING_TABLE_STRUCTURE
+  INTERCHANGE_FORMAT           = BINARY
+  BYTES                        = 152
+  NOTE                         = "This structure describes the format of
+        the engineering record that is included in each image file.
+        This record contains the first 152 bytes of data extracted from
+        the Mission and Test Imaging System (MTIS) header record on each
+        file of an imaging EDR tape."
+
+  OBJECT                       = COLUMN
+    NAME                       = MTIS_RECORD_ID
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 1
+    BYTES                      = 2
+    DESCRIPTION                = "Mission and Test Imaging System record
+        ID."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PHYSICAL_SEQUENCE_NUMBER
+    DATA_TYPE                  = VAX_UNSIGNED_INTEGER
+    START_BYTE                 = 3
+    BYTES                      = 2
+    DESCRIPTION                = "Physical sequence number on Experiment
+        Data Record tape.  Not used."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LOGICAL_SEQUENCE_NUMBER
+    DATA_TYPE                  = VAX_UNSIGNED_INTEGER
+    START_BYTE                 = 5
+    BYTES                      = 2
+    DESCRIPTION                = "Logical sequence number on Experiment
+        Data Record tape.  Not used."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 7
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time year and day
+        value.  Time of first line segment in the file containing valid
+        data.  This field is NOT stored in VAX least significant byte
+        first format."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FIRST_ERT_YEAR
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 1
+      BITS                     = 7
+      DESCRIPTION              = "Earth Received Time year of century
+        (1900).  Time of first line record in the file containing valid
+        data.  This field is often incorrect."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FIRST_ERT_DAY
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 7
+      BITS                     = 9
+      DESCRIPTION              = "Earth Received Time day of year."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT_MINUTE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 9
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time minute of day."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT_MILLISECOND
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 11
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time millisecond of
+        minute."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 13
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time year and day
+        value.  Time of last line segment of the file containing valid
+        data."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LAST_ERT_YEAR
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 1
+      BITS                     = 7
+      DESCRIPTION              = "Earth Received Time year of century
+        (1900).  This field is often incorrect."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LAST_ERT_DAY
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 8
+      BITS                     = 9
+      DESCRIPTION              = "Earth Received Time day of year."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT_MINUTE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 15
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time minute of day."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT_MILLISECOND
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 17
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time millisecond of
+        minute."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 19
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem count for the
+        first line segment of the file containing valid data.  Note that
+        this may not correspond to the FDS count for line 1, segment 1."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 23
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem count for the
+        last line segment of the file containing valid data.  Note that
+        this may not correspond to the FDS count for segment 7 of line
+        1056."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EDR_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 27
+    BYTES                      = 6
+    DESCRIPTION                = "Tape reel identifier of the original
+        EDR tape for this image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EDR_FILE_NUMBER
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 33
+    BYTES                      = 2
+    DESCRIPTION                = "File number of image on original EDR
+        tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILL_IN
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 34
+    BYTES                      = 1
+    DESCRIPTION                = "Value used to fill in missing samples
+        (always zero)."
+  END_OBJECT                   = COLUMN
+  OBJECT                       = COLUMN
+    NAME                       = TRACK_PRESENCE_MASK
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 36
+    BYTES                      = 1
+    DESCRIPTION                = "Mask indicating which tracks are
+        present in the image.  The nominal value is HEX 7F, indicating
+        that all seven tracks are present."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = AVERAGE_PIXEL
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 37
+    BYTES                      = 2
+    DESCRIPTION                = "Average pixel value for image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_1
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 39
+    BYTES                      = 4
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MINIMUM_SNR
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 43
+    BYTES                      = 2
+    FACTOR                     = 0.03125
+    DESCRIPTION                = "Minimum signal to noise ratio.  The
+        minimum noise level found for the scan lines.  Divide by 32 to
+        get the actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MAXIMUM_SNR
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 45
+    BYTES                      = 2
+    FACTOR                     = 0.03125
+    DESCRIPTION                = "Maximum signal to noise ratio.  The
+        maximum noise level found for the scan lines.  Divide by 32 to
+        get the actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_2
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 47
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MINIMUM_AGC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 49
+    BYTES                      = 2
+    FACTOR                     = 0.0625
+    DESCRIPTION                = "Automatic gain control minimum.
+        Divide by 16 to get actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MAXIMUM_AGC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 51
+    BYTES                      = 2
+    FACTOR                     = 0.0625
+    DESCRIPTION                = "Automatic gain control maximum.
+        Divide by 16 to get actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_3
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 53
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 55
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that contain some valid data (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 57
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that were fully synchronized (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 59
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that were partly synchronized (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI0_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 61
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 0 (maximum is 7 x 1056).
+        DQI0 indicates bad data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI1_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 63
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 1 (maximum is 7 x 1056).
+        DQI1 means SNR low, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI2_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 65
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 2 (maximum is 7 x 1056).
+        DQI2 means SNR good, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI3_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 67
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 3 (maximum is 7 x 1056).
+        DQI3 means SNR low, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI4_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 69
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 4 (maximum is 7 x 1056).
+        DQI4 means SNR good, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FDS_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 71
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected FDS counts."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PNERROR_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 73
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected pseudonoise codes."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = ADJUSTED_PNERROR_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 75
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected pseudonoise codes adjusted based on the
+        number of line segments processed versus the total in a full
+        image (7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNREADABLE_RECORDS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 77
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that could not be read from the Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LOGICAL_SEQUENCE_BREAKS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 79
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of breaks in logical
+        sequence number in reading the System/Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DATA_BREAKS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 81
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of breaks in data
+        sequence in reading the System/Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_4
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 83
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 85
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of lines in the file that
+        contain some valid data (nominal is 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULL_LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 87
+    BYTES                      = 2
+    DESCRIPTION                = "Number of lines in the file that are
+        composed of seven line segments."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTIAL_LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 89
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line records in the
+        file that contain some valid data but are not composed of seven
+        line segments."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 91
+    BYTES                      = 2
+    DESCRIPTION                = "First line in image containing valid
+        data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 93
+    BYTES                      = 2
+    DESCRIPTION                = "Last line in image containing valid
+        data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_5
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 95
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = IMAGE_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 97
+    BYTES                      = 6
+    DESCRIPTION                = "Image identifier (PICNO) for this
+        image, formatted OOOSNN, where OOO is orbit number, S is
+        spacecraft identifier (A for Viking Orbiter 1 prime and extended
+        missions; B for Viking Orbiter 2; and S for Viking Orbiter 1
+        Survey mission)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VRP_RUN_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 103
+    BYTES                      = 2
+    DESCRIPTION                = "Viking Reconstruction Processing run
+        number."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DISK_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 105
+    BYTES                      = 6
+    DESCRIPTION                = "MTIS disk identifier of the original
+        EDR file for this image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_6
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 111
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRANSMITTED_CODE_WORD1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 113
+    BYTES                      = 2
+    DESCRIPTION                = "Transmitted command code word for the
+        image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  Where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CATHODE_CURRENT_FLAG
+      START_BIT                = 7
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Cathode current off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = GAIN_FLAG
+      START_BIT                = 8
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Gain mode low (0) or high (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LIGHT_FLOOD_FLAG
+      START_BIT                = 9
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Light flood off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_STEP
+      START_BIT                = 10
+      BITS                     = 2
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter step indicator."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = EXPOSURE_CODE
+      START_BIT                = 12
+      BITS                     = 5
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Exposure interval code."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRANSMITTED_CODE_WORD2
+    DATA_TYPE                  = INTEGER
+    START_BYTE                 = 115
+    BYTES                      = 2
+    DESCRIPTION                = "Transmitted command code word 2 for
+        this image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_NUMBER
+      START_BIT                = 10
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter number:  where 1 is blue; 2 is
+        minus blue; 3 is violet; 4 is clear; 5 is green; and 6 is red."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CAMERA_SERIAL_NUMBER
+      START_BIT                = 13
+      BITS                     = 4
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Visual Imaging Subsystem camera serial
+        number."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = RECEIVED_CODE_WORD1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 117
+    BYTES                      = 2
+    DESCRIPTION                = "Received command code word for the
+        image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CATHODE_CURRENT_FLAG
+      START_BIT                = 7
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Cathode current (beam) off (0) or on
+        (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = GAIN_FLAG
+      START_BIT                = 8
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Gain mode low (0) or high (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LIGHT_FLOOD_FLAG
+      START_BIT                = 9
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Light flood off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_STEP
+      START_BIT                = 10
+      BITS                     = 2
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter step."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = EXPOSURE_CODE
+      START_BIT                = 12
+      BITS                     = 5
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Exposure interval code."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS50_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 121
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 50 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS15_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 123
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 15 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS12_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 125
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 12 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS5_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 127
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 5 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_MINUS15_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 129
+    BYTES                      = 2
+    DESCRIPTION                = "Minus 15 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_MINUS23_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 131
+    BYTES                      = 2
+    DESCRIPTION                = "Minus 23 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_AVERAGE_VIDEO
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 133
+    BYTES                      = 2
+    DESCRIPTION                = "Average video."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = POWER_CONVERTER_INPUT_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 135
+    BYTES                      = 2
+    DESCRIPTION                = "Power converter input current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = CATHODE_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 137
+    BYTES                      = 2
+    DESCRIPTION                = "Cathode current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = CATHODE_VOLTAGE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 139
+    BYTES                      = 2
+    DESCRIPTION                = "Cathode voltage."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILAMENT_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 141
+    BYTES                      = 2
+    DESCRIPTION                = "Filament current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FRAME_SWEEP_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 143
+    BYTES                      = 2
+    DESCRIPTION                = "Frame sweep current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_SWEEP_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 145
+    BYTES                      = 2
+    DESCRIPTION                = "Line sweep current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = GRID3_VOLTAGE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 147
+    BYTES                      = 2
+    DESCRIPTION                = "Grid 3 voltage."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FOCUS_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 149
+    BYTES                      = 2
+    DESCRIPTION                = "Focus current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DIGITAL_LADDER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 151
+    BYTES                      = 2
+    DESCRIPTION                = "Digital ladder."
+  END_OBJECT                   = COLUMN
+
+END_OBJECT                     = ENGINEERING_TABLE_STRUCTURE
+
+END
+END_OBJECT
+OBJECT                           = LINE_HEADER_TABLE
+ ROWS                            = 1056
+ ROW_BYTES                       = 62
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+
+OBJECT                         = LINE_HEADER_TABLE_STRUCTURE
+  INTERCHANGE_FORMAT           = BINARY
+  BYTES                        = 62
+  NOTE                         = "Viking Orbiter Image Line-header
+        Structure.  This label describes the structure of the 62-bytes
+        extracted from the end of each image line."
+
+  OBJECT                       = COLUMN
+    NAME                       = FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 1
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem (FDS) clock
+        count."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 5
+    BYTES                      = 2
+    DESCRIPTION                = "Flight Data Subsystem line number,
+        extracted from the telemetry record header information."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILL_IN
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 7
+    BYTES                      = 1
+    DESCRIPTION                = "Value used to fill in missing samples
+        (always zero)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRACK_PRESENCE_MASK
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 8
+    BYTES                      = 1
+    DESCRIPTION                = "Mask indicating which tracks are
+        present in this line.  The nominal value is HEX 7F, indicating
+        that all seven tracks are present."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = AVERAGE_PIXEL
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 9
+    BYTES                      = 2
+    DESCRIPTION                = "Average pixel value for this line."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 11
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        line that contain some valid data (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 13
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        that were fully synchronized (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 15
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        that were partly synchronized (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI0_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 17
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 0 (maximum is 7), indicating
+        bad data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI1_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 19
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 1 (maximum is 7), indicating
+        SNR low, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI2_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 21
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 2 (maximum is 7), indicating
+        SNR good, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI3_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 23
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 3 (maximum is 7), indicating
+        SNR low, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI4_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 25
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 4 (maximum is 7), indicating
+        SNR good, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 27
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 29
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT2
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 31
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK2
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 33
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT3
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 35
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK3
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 37
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+        START_BIT              = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT4
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 39
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK4
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 41
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT5
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 43
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK5
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 45
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT6
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 47
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK6
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 49
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT7
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 51
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK7
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 53
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EMBEDDED_SCIENCE_DATA
+    ITEMS                      = 7
+    DATA_TYPE                  = INTEGER
+    START_BYTE                 = 55
+    ITEM_BYTES                 = 1
+    DESCRIPTION                = "Embedded low rate science data from
+        seven segments."
+  END_OBJECT                   = COLUMN
+
+END_OBJECT                     = LINE_HEADER_TABLE_STRUCTURE
+
+END
+END_OBJECT
+OBJECT                           = IMAGE
+ ENCODING_TYPE                   = HUFFMAN_FIRST_DIFFERENCE
+ LINES                           = 1056
+ LINE_SAMPLES                    = 1204
+ SAMPLE_TYPE                     = UNSIGNED_INTEGER
+ SAMPLE_BITS                     = 8
+ SAMPLE_BIT_MASK                 = 2#11111110#
+ CHECKSUM                        = 200755970
+END_OBJECT
+END
diff --git a/tests/pytests/data/f004b65/naif0012.tls b/tests/pytests/data/f004b65/naif0012.tls
new file mode 100644
index 0000000..e1afdee
--- /dev/null
+++ b/tests/pytests/data/f004b65/naif0012.tls
@@ -0,0 +1,152 @@
+KPL/LSK
+
+
+LEAPSECONDS KERNEL FILE
+===========================================================================
+
+Modifications:
+--------------
+
+2016, Jul. 14   NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2016.
+
+2015, Jan. 5    NJB  Modified file to account for the leapsecond that
+                     will occur on June 30, 2015.
+
+2012, Jan. 5    NJB  Modified file to account for the leapsecond that
+                     will occur on June 30, 2012.
+                     
+2008, Jul. 7    NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2008.
+                     
+2005, Aug. 3    NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2005.
+                     
+1998, Jul  17   WLT  Modified file to account for the leapsecond that
+                     will occur on December 31, 1998.
+                     
+1997, Feb  22   WLT  Modified file to account for the leapsecond that
+                     will occur on June 30, 1997.
+                     
+1995, Dec  14   KSZ  Corrected date of last leapsecond from 1-1-95
+                     to 1-1-96.
+
+1995, Oct  25   WLT  Modified file to account for the leapsecond that
+                     will occur on Dec 31, 1995.
+
+1994, Jun  16   WLT  Modified file to account for the leapsecond on
+                     June 30, 1994.
+
+1993, Feb. 22  CHA   Modified file to account for the leapsecond on
+                     June 30, 1993.
+
+1992, Mar. 6   HAN   Modified file to account for the leapsecond on
+                     June 30, 1992.
+
+1990, Oct. 8   HAN   Modified file to account for the leapsecond on 
+                     Dec. 31, 1990.  
+
+
+Explanation:
+------------
+
+The contents of this file are used by the routine DELTET to compute the 
+time difference
+
+[1]       DELTA_ET  =  ET - UTC                                         
+          
+the increment to be applied to UTC to give ET. 
+
+The difference between UTC and TAI,
+
+[2]       DELTA_AT  =  TAI - UTC
+
+is always an integral number of seconds. The value of DELTA_AT was 10
+seconds in January 1972, and increases by one each time a leap second
+is declared. Combining [1] and [2] gives
+
+[3]       DELTA_ET  =  ET - (TAI - DELTA_AT)
+
+                    =  (ET - TAI) + DELTA_AT
+
+The difference (ET - TAI) is periodic, and is given by
+
+[4]       ET - TAI  =  DELTA_T_A  + K sin E 
+
+where DELTA_T_A and K are constant, and E is the eccentric anomaly of the 
+heliocentric orbit of the Earth-Moon barycenter. Equation [4], which ignores 
+small-period fluctuations, is accurate to about 0.000030 seconds.
+
+The eccentric anomaly E is given by 
+
+[5]       E = M + EB sin M
+
+where M is the mean anomaly, which in turn is given by 
+
+[6]       M = M  +  M t
+               0     1
+
+where t is the number of ephemeris seconds past J2000.
+
+Thus, in order to compute DELTA_ET, the following items are necessary.
+
+          DELTA_TA
+          K
+          EB
+          M0
+          M1
+          DELTA_AT      after each leap second.
+
+The numbers, and the formulation, are taken from the following sources.
+
+     1) Moyer, T.D., Transformation from Proper Time on Earth to 
+        Coordinate Time in Solar System Barycentric Space-Time Frame
+        of Reference, Parts 1 and 2, Celestial Mechanics 23 (1981),
+        33-56 and 57-68.
+
+     2) Moyer, T.D., Effects of Conversion to the J2000 Astronomical
+        Reference System on Algorithms for Computing Time Differences
+        and Clock Rates, JPL IOM 314.5--942, 1 October 1985.
+
+The variable names used above are consistent with those used in the 
+Astronomical Almanac.
+
+\begindata
+
+DELTET/DELTA_T_A       =   32.184
+DELTET/K               =    1.657D-3
+DELTET/EB              =    1.671D-2
+DELTET/M               = (  6.239996D0   1.99096871D-7 )
+
+DELTET/DELTA_AT        = ( 10,   @1972-JAN-1
+                           11,   @1972-JUL-1     
+                           12,   @1973-JAN-1     
+                           13,   @1974-JAN-1     
+                           14,   @1975-JAN-1          
+                           15,   @1976-JAN-1          
+                           16,   @1977-JAN-1          
+                           17,   @1978-JAN-1          
+                           18,   @1979-JAN-1          
+                           19,   @1980-JAN-1          
+                           20,   @1981-JUL-1          
+                           21,   @1982-JUL-1          
+                           22,   @1983-JUL-1          
+                           23,   @1985-JUL-1          
+                           24,   @1988-JAN-1 
+                           25,   @1990-JAN-1
+                           26,   @1991-JAN-1 
+                           27,   @1992-JUL-1
+                           28,   @1993-JUL-1
+                           29,   @1994-JUL-1
+                           30,   @1996-JAN-1 
+                           31,   @1997-JUL-1
+                           32,   @1999-JAN-1
+                           33,   @2006-JAN-1
+                           34,   @2009-JAN-1
+                           35,   @2012-JUL-1
+                           36,   @2015-JUL-1 
+                           37,   @2017-JAN-1 )
+
+\begintext
+
+
diff --git a/tests/pytests/data/f004b65/pck00009.tpc b/tests/pytests/data/f004b65/pck00009.tpc
new file mode 100644
index 0000000..bfadaab
--- /dev/null
+++ b/tests/pytests/data/f004b65/pck00009.tpc
@@ -0,0 +1,3639 @@
+KPL/PCK
+ 
+
+P_constants (PcK) SPICE kernel file
+===========================================================================
+
+        By: Nat Bachman (NAIF)    2010 March 3
+ 
+ 
+Purpose
+--------------------------------------------------------
+
+     This file makes available for use in SPICE-based application
+     software orientation and size/shape data for natural bodies. The
+     principal source of the data is a published report by the IAU/IAG
+     Working Group on Cartographic Coordinates and Rotational Elements [1].
+
+     Orientation and size/shape data not provided by this file may be
+     available in mission-specific PCK files. Such PCKs may be the preferred
+     data source for mission-related applications. Mission-specific PCKs can
+     be found in PDS archives or on the NAIF web site at URL:
+
+        http://naif.jpl.nasa.gov
+
+
+File Organization
+--------------------------------------------------------
+ 
+     The contents of this file are as follows.
+ 
+     Introductory Information:
+
+         --   Purpose
+
+         --   File Organization
+ 
+         --   Version description
+ 
+         --   Disclaimer
+ 
+         --   Sources
+ 
+         --   Explanatory notes
+ 
+         --   Body numbers and names
+ 
+
+     PcK Data:
+ 
+
+        Orientation Data
+        ----------------
+
+         --   Orientation constants for the Sun and planets.        
+              Additional items included in this section:
+
+                 - Earth north geomagnetic centered dipole values
+                   for epochs 1945-2000
+
+                 - Mars prime meridian offset "lambda_a"
+
+         --   Orientation constants for satellites
+ 
+         --   Orientation constants for asteroids Eros, Gaspra, Ida,
+              Itokawa, and Vesta
+ 
+         --   Orientation constants for comets 19P/Borrelly
+              and 9P/Tempel 1
+
+
+        Radii of Bodies
+        ---------------
+
+         --   Radii of Sun and planets
+         
+         --   Radii of satellites, where available
+         
+         --   Radii of asteroids Ceres, Eros, Gaspra, Ida, Itokawa,
+              Mathilde, Toutatis, and Vesta.
+            
+         --   Radii of comets 19P/Borrelly, Halley, 9P/Tempel 1,
+              and 81P/Wild 2
+
+
+
+Version Description
+--------------------------------------------------------
+ 
+     This file was created on March 3, 2010. This version
+     incorporates data from reference [1].
+ 
+     This file contains size, shape, and orientation data for all
+     objects described by the previous version of the file, except
+     for Kleopatra: a shape model for this body is not provided in [1]
+     because, according to this source, it had been "modeled from
+     low resolution radar data, and cannot be mapped from those
+     data."
+
+     New objects covered by this file but not the previous
+     version are:
+        
+        19P/Borrelly
+        Halley
+        9P/Tempel 1
+        81P/Wild 2
+        Ceres
+        Itokawa
+        Mathilde
+        Toutatis
+                         
+ 
+Disclaimer
+--------------------------------------------------------
+ 
+Applicability of Data
+
+     This P_constants file may not contain the parameter values that
+     you prefer. NAIF suggests that you inspect this file visually
+     before proceeding with any critical or extended data processing.
+
+File Modifications by Users
+
+     Note that this file may be readily modified by you to change
+     values or add/delete parameters. NAIF requests that you update the
+     "by line," date, and version description section if you modify
+     this file.
+     
+Known Limitations and Caveats
+
+     Accuracy
+     --------
+
+     In general, the orientation models given here are claimed by the
+     IAU/IAG Working Group Report [1] to be accurate to 0.1 degree
+     ([1], p.158). However, NAIF notes that orientation models for
+     natural satellites and asteroids have in some cases changed
+     substantially with the availability of new observational data, so
+     users are urged to investigate the suitability for their
+     applications of the models presented here.
+
+     Earth orientation
+     -----------------
+
+     NAIF strongly cautions against using the earth rotation model
+     (from [1]) for work demanding high accuracy. This model has been
+     determined by NAIF to have an error in the prime meridian location
+     of magnitude at least 150 arcseconds, with a local minimum
+     occurring during the year 1999. Regarding availability of better
+     earth orientation data for use with the SPICE system:
+
+        Earth orientation data are available from NAIF in the form of
+        binary earth PCK files. NAIF employs an automated process to
+        create these files; each time JPL's Tracking Systems and
+        Applications Section produces a new earth orientation parameter
+        (EOP) file, a new PCK is produced. These PCKs cover a roughly
+        10 year time span starting at Jan. 1, 2000. In these PCK files,
+        the following effects are accounted for in modeling the earth's
+        rotation:
+
+           - Precession:                   1976 IAU model
+
+           - Nutation:                     1980 IAU model, plus interpolated
+                                           EOP nutation corrections
+
+           - Polar motion:                 interpolated from EOP file
+
+           - True sidereal time:
+
+                  UT1 - UT1R (if needed):  given by analytic formula
+                + TAI - UT1 (or UT1R):     interpolated from EOP file
+                + UT1 - GMST:              given by analytic formula
+                + equation of equinoxes:   given by analytic formula
+
+             where
+
+                TAI    =   International Atomic Time
+                UT1    =   Greenwich hour angle of computed mean sun - 12h
+                UT1R   =   Regularized UT1
+                GMST   =   Greenwich mean sidereal time                   
+
+        These kernels are available from the NAIF web site
+
+           http://naif.jpl.nasa.gov
+
+        (follow the links to Data, generic_kernels, and PCK data) or
+
+           ftp://naif.jpl.nasa.gov/pub/naif/generic_kernels/pck
+
+        or via anonymous ftp from the server
+ 
+           naif.jpl.nasa.gov
+
+        The kernels are in the path
+
+           pub/naif/generic_kernels/pck
+
+        At this time, these kernels have file names of the form
+
+           earth_000101_yymmdd_yymmdd.bpc
+
+        The second and third dates are, respectively, the file's 
+        coverage end time and the epoch of the last datum.
+ 
+        These binary PCK files are very accurate (error < 0.1
+        microradian) for epochs preceding the epoch of the last datum.
+        For later epochs, the error rises to several microradians.
+
+        Binary PCK files giving accurate earth orientation from 1972 to
+        2007 and *low accuracy* predicted earth orientation from
+        2007 to 2037 are also available in the same location. See the
+        aareadme.txt file at the "pck" URL above for details.
+
+        Characteristics and names of the binary kernels described here
+        are subject to change. See the "pck" URL above for information
+        on current binary earth PCKs.
+
+
+     Lunar orientation
+     -----------------
+
+     The lunar orientation formula provided by this file is a
+     trigonometric polynomial approximation yielding the orientation of
+     the lunar "Mean Earth/Polar Axis" (ME) reference frame. A more
+     accurate approximation can be obtained by using both the NAIF
+     lunar frame kernel and the binary lunar orientation PCK file,
+     which are available on the NAIF web site (see URLS above)
+     and in the NAIF server's ftp area. The lunar frame kernel
+     is located in the path
+
+        pub/naif/generic_kernels/fk/satellites
+
+     and has a name of the form
+
+        moon_yymmdd.tf
+
+     The binary lunar PCK is in the path
+
+        pub/naif/generic_kernels/pck
+
+     and has a name of the form
+
+        moon_pa_dennn_yyyy-yyyy.bpc
+
+     See the "aareadme.txt" files in the paths shown above for details
+     on file contents and versions. We also suggest you refer to the
+     SPICE tutorial named "lunar_earth_pck-fk," which is available from
+     the NAIF web site.
+
+
+     Earth geomagnetic dipole
+     ------------------------
+
+     The SPICE Toolkit doesn't currently contain software to model the
+     earth's north geomagnetic centered dipole as a function of time.
+     As a convenience for users, the north dipole location from the
+     J2000 epoch was selected as a representative datum, and the
+     planetocentric longitude and latitude of this location have been
+     associated with the keywords
+       
+        BODY399_N_GEOMAG_CTR_DIPOLE_LON
+        BODY399_N_GEOMAG_CTR_DIPOLE_LAT
+     
+     Values for the earth's north geomagnetic centered dipole are
+     presented in comments as a discrete time series for the time range
+     1945-2000. For details concerning the geomagnetic field model from
+     which these values were derived, including a discussion of the
+     model's accuracy, see [9].
+ 
+
+     Mars prime meridian offset
+     --------------------------
+
+     The Mars prime meridian offset given by [5] is not used by
+     SPICE geometry software for computations involving the shape
+     of Mars (for example, in sub-observer point or surface intercept
+     computations). The value is provided for informational
+     purposes only.
+
+
+     Software limitations
+     --------------------
+
+     SPICE Toolkits prior to version N0057 cannot make use of
+     trigonometric polynomial terms in the formulas for orientation of
+     the planets. The only planets for which such terms are used are
+     Jupiter and Neptune. Use of trigonometric polynomial terms for
+     natural satellites is and has been supported for all SPICE Toolkit
+     versions.
+ 
+     The second nutation precession angle (M2) for Mars is represented
+     by a quadratic polynomial in the 2006 IAU report. The SPICELIB
+     subroutine BODEUL can not handle this term (which is extremely
+     small), so we truncate the polynomial to a linear one. The 
+     resulting orientation error has a maximum magnitude of less
+     than 0.0032 degrees over the time span 1996-2015 and less than
+     0.0082 degrees over the time span 1986-2025.
+
+
+Sources
+--------------------------------------------------------
+ 
+     The sources for the constants listed in this file are:
+
+
+        [1]   Seidelmann, P.K., Archinal, B.A., A'Hearn, M.F., 
+              Conrad, A., Consolmagno, G.J., Hestroffer, D.,
+              Hilton, J.L., Krasinsky, G.A., Neumann, G.,
+              Oberst, J., Stooke, P., Tedesco, E.F., Tholen, D.J., 
+              and Thomas, P.C. "Report of the IAU/IAG Working Group 
+              on cartographic coordinates and rotational elements: 2006."
+
+        [2]   Seidelmann, P.K., Archinal, B.A., A'Hearn, M.F., 
+              Cruikshank, D.P., Hilton, J.L., Keller, H.U., Oberst, J.,
+              Simon, J.L., Stooke, P., Tholen, D.J., and Thomas, P.C.
+              "Report of the IAU/IAG Working Group on Cartographic
+              Coordinates and Rotational Elements of the Planets and
+              Satellites: 2003."
+ 
+        [3]   Nautical Almanac Office, United States Naval Observatory
+              and H.M. Nautical Almanac Office, Rutherford Appleton
+              Laboratory (2010). "The Astronomical Almanac for
+              the Year 2010," U.S. Government Printing Office,
+              Washington, D.C.: and The Stationary Office, London.
+
+        [4]   Nautical Almanac Office, United States Naval Observatory,
+              H.M. Nautical Almanac Office, Royal Greenwich
+              Observatory, Jet Propulsion Laboratory, Bureau des
+              Longitudes, and The Time Service and Astronomy
+              Departments, United States Naval Observatory (1992).
+              "Explanatory Supplement to the Astronomical Almanac," P.
+              Kenneth Seidelmann, ed. University Science Books, 20
+              Edgehill Road, Mill Valley, CA 9494.
+
+        [5]   Duxbury, Thomas C. (2001). "IAU/IAG 2000 Mars Cartographic
+              Conventions,"  presentation to the Mars Express Data
+              Archive Working Group, Dec. 14, 2001.
+
+        [6]   Russell, C.T. and Luhmann, J.G. (1990). "Earth: Magnetic 
+              Field and Magnetosphere." <http://www-ssc.igpp.ucla.
+              edu/personnel/russell/papers/earth_mag>. Originally
+              published in "Encyclopedia of Planetary Sciences," J.H.
+              Shirley and R.W. Fainbridge, eds. Chapman and Hall,
+              New York, pp 208-211.
+
+        [7]   Russell, C.T. (1971). "Geophysical Coordinate 
+              Transformations," Cosmic Electrodynamics 2  184-186.
+              NAIF document 181.0.
+     
+        [8]   ESA/ESTEC Space Environment Information System (SPENVIS)
+              (2003). Web page:  "Dipole approximations of the
+              geomagnetic field."  <http://www.spenvis.oma.be/spenvis/
+              help/background/magfield/cd.html>.
+ 
+        [9]   International Association of Geomagnetism and Aeronomy
+              and International Union of Geodesy and Geophysics (2004).
+              Web page:  "The 9th Generation International Geomagnetic
+              Reference Field." <http://www.ngdc.noaa.gov/
+              IAGA/vmod/igrf.html>.
+                             
+        [10]  Davies, M.E., Abalakin, V.K., Bursa, M., Hunt, G.E.,
+              and Lieske, J.H. (1989). "Report of the IAU/IAG/COSPAR
+              Working Group on Cartographic Coordinates and Rotational
+              Elements of the Planets and Satellites: 1988," Celestial
+              Mechanics and Dynamical Astronomy, v.46, no.2, pp.
+              187-204.
+
+         
+     Most values are from [1]. All exceptions are 
+     commented where they occur in this file. The exceptions are:
+ 
+                 
+         --   Radii for the Sun are from [3].
+             
+         --   The second nutation precession angle (M2) for Mars is
+              represented by a quadratic polynomial in the 2000
+              IAU report. The SPICELIB subroutine BODEUL can not
+              handle this term (which is extremely small), so we
+              truncate the polynomial to a linear one.
+           
+          --  Earth north geomagnetic centered dipole values are from
+              [8]. The article [6] was used to check most of 
+              these values, and the values were also re-computed from 
+              the 9th generation IGRF [9] by Nat Bachman.
+         
+          -- The Mars prime meridian offset angle is from [5].
+
+
+     "Old values" listed are from the SPICE P_constants file
+     pck00008.tpc dated September 21, 2004. Most of these values came
+     from the 2003 IAU report [2].
+ 
+ 
+ 
+ 
+Explanatory Notes
+--------------------------------------------------------
+
+     This file, which is logically part of the SPICE P-kernel, contains
+     constants used to model the orientation, size and shape of the
+     Sun, planets, natural satellites, and selected comets and
+     asteroids. The orientation models express the direction of the
+     pole and location of the prime meridian of a body as a function of
+     time. The size/shape models ("shape models" for short) represent
+     all bodies as ellipsoids, using two equatorial radii and a polar
+     radius. Spheroids and spheres are obtained when two or all three
+     radii are equal.
+
+     The SPICE Toolkit routines that use this file are documented in
+     the SPICE "Required Reading" file pck.req. They are also 
+     documented in the "PCK" SPICE tutorial, which is available on
+     the NAIF web site.
+
+File Format
+        
+     A terse description of the PCK file format is given here. See the
+     SPICE "Required Reading" files pck.req and kernel.req for a
+     detailed explanation of the SPICE text kernel file format. The
+     files pck.req and kernel.req are included in the documentation
+     provided with the SPICE Toolkit.
+
+     The file starts out with the ``ID word'' string
+
+        KPL/PCK
+
+     This string identifies the file as a text kernel containing PCK 
+     data.
+
+     This file consists of a series of comment blocks and data blocks.
+     Comment blocks, which contain free-form descriptive or explanatory
+     text, are preceded by a \begintext token. Data blocks follow a
+     \begindata token. In order to be recognized, each of these tokens
+     must be placed on a line by itself.
+
+     The portion of the file preceding the first data block is treated
+     as a comment block; it doesn't require an initial \begintext
+     token.
+
+     This file identifies data using a series of
+
+        KEYWORD = VALUE
+
+     assignments. The left hand side of each assignment is a
+     "kernel variable" name; the right hand side is an associated value
+     or list of values. The SPICE subroutine API allows SPICE routines
+     and user applications to retrieve the set of values associated
+     with each kernel variable name.
+
+     Kernel variable names are case-sensitive and are limited to
+     32 characters in length. 
+
+     Numeric values may be integer or floating point. String values
+     are normally limited to 80 characters in length; however, SPICE
+     provides a mechanism for identifying longer, "continued" strings.
+     See the SPICE routine STPOOL for details.
+
+     String values are single quoted.
+
+     When the right hand side of an assignment is a list of values,
+     the list items may be separated by commas or simply by blanks.
+     The list must be bracketed by parentheses. Example:
+
+        BODY399_RADII = ( 6378.14 6378.14 6356.75 )
+ 
+     Any blanks preceding or following keyword names, values and equal
+     signs are ignored.
+  
+     Assignments may be spread over multiple lines, for example:
+
+        BODY399_RADII = ( 6378.14 
+                          6378.14 
+                          6356.75 )
+
+     This file may contain blank lines anywhere. Non-printing
+     characters including TAB should not be present in the file: the
+     presence of such characters may cause formatting errors when the
+     file is viewed.
+
+Time systems and reference frames
+
+     The 2006 IAU/IAG Working Group Report [1] states the time scale
+     used as the independent variable for the rotation formulas is
+     Barycentric Dynamical Time (TDB) and that the epoch of variable
+     quantities is J2000 TDB (2000 Jan 1 12:00 TDB). Throughout SPICE
+     documentation and in this file, we use the names "J2000 TDB" and
+     "J2000" for this epoch. The name "J2000.0" is equivalent.
+
+     SPICE documentation refers to the time system used in this file 
+     as either "ET" or "TDB." SPICE software makes no distinction 
+     between TDB and the time system associated with the independent
+     variable of the JPL planetary ephemerides T_eph.
+ 
+     The inertial reference frame used for the rotational elements in
+     this file is identified by [1] as the ICRF (International
+     Celestial Reference Frame). 
+
+     The SPICE PCK software that reads this file uses the label "J2000"
+     to refer to the ICRF; this is actually a mislabeling which has
+     been retained in the interest of backward compatibility. Using
+     data from this file, by means of calls to the SPICE frame
+     transformation routines, will actually compute orientation
+     relative to the ICRF.
+
+     The difference between the J2000 frame and the ICRF is
+     on the order of tens of milliarcseconds and is well below the
+     accuracy level of the formulas in this file.
+
+Orientation models
+ 
+     All of the orientation models use three Euler angles to describe
+     the orientation of the coordinate axes of the "Body Equator and
+     Prime Meridian" system with respect to an inertial system. By
+     default, the inertial system is the ICRF (labeled as "J2000"), but
+     other frames can be specified in the file. See the PCK Required
+     Reading for details.
+ 
+     The first two angles, in order, are the ICRF right ascension and
+     declination (henceforth RA and DEC) of the north pole of a body as
+     a function of time. The third angle is the prime meridian location
+     (represented by "W"), which is expressed as a rotation about the
+     north pole, and is also a function of time.
+ 
+     For each body, the expressions for the north pole's right
+     ascension and declination, as well as prime meridian location, are
+     sums (as far as the models that appear in this file are concerned)
+     of quadratic polynomials and trigonometric polynomials, where the
+     independent variable is time.
+ 
+     In this file, the time arguments in expressions always refer to
+     Barycentric Dynamical Time (TDB), measured in centuries or days
+     past a reference epoch. By default, the reference epoch is the
+     J2000 epoch, which is Julian ephemeris date 2451545.0, but other
+     epochs can be specified in the file. See the PCK Required Reading
+     for details.
+
+     Orientation models for satellites and some planets (including
+     Jupiter) involve both polynomial terms and trigonometric terms.
+     The arguments of the trigonometric terms are linear polynomials.
+     In this file, we call the arguments of these trigonometric terms
+     "nutation precession angles."
+
+     Example: 2006 IAU Model for orientation of Jupiter.  Note that 
+     these values are used as an example only; see the data area below 
+     for current values.
+
+        Right ascension
+        ---------------
+ 
+        alpha   =  268.056595 - 0.006499 T        +  0.000117 sin(Ja) 
+             0                + 0.000938 sin(Jb)  +  0.001432 sin(Jc)
+                              + 0.000030 sin(Jd)  +  0.002150 sin(Je)
+
+        Declination
+        -----------
+ 
+        delta   =   64.495303 + 0.002413 T        +  0.000050 cos(Ja)
+             0                + 0.000404 cos(Jb)  +  0.000617 cos(Jc)
+                              - 0.000013 cos(Jd)  +  0.000926 cos(Je)
+
+        Prime meridian
+        --------------
+
+        W       =  284.95  + 870.5366420 d
+ 
+
+     Here
+
+        T represents centuries past J2000 ( TDB ),
+ 
+        d represents days past J2000 ( TDB ).
+
+        Ja-Je are nutation precession angles.
+
+     In this file, the polynomials' coefficients above are assigned 
+     to kernel variable names (left-hand-side symbols) as follows
+
+        BODY599_POLE_RA        = (   268.056595     -0.006499       0. )
+        BODY599_POLE_DEC       = (    64.495303      0.002413       0. )
+        BODY599_PM             = (   284.95        870.5366420      0. )
+
+     and the trigonometric polynomials' coefficients are assigned 
+     as follows
+
+        BODY599_NUT_PREC_RA  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000117
+                                                                0.000938
+                                                                0.001432
+                                                                0.000030
+                                                                0.002150 )
+
+        BODY599_NUT_PREC_DEC = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000050
+                                                                0.000404
+                                                                0.000617
+                                                               -0.000013
+                                                                0.000926 )
+
+        BODY599_NUT_PREC_PM  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0  ) 
+
+     Note the number "599"; this is the NAIF ID code for Jupiter.
+
+     In this file, the polynomial expressions for the nutation
+     precession angles are listed along with the planet's RA, DEC, and
+     prime meridian terms. Below are the 2006 IAU nutation precession
+     angles for the Jupiter system.
+
+        J1  =   73.32      +  91472.9 T
+        J2  =   24.62      +  45137.2 T
+        J3  =  283.90      +   4850.7 T
+        J4  =  355.80      +   1191.3 T
+        J5  =  119.90      +    262.1 T
+        J6  =  229.80      +     64.3 T
+        J7  =  352.25      +   2382.6 T
+        J8  =  113.35      +   6070.0 T
+
+        J9  =  146.64      + 182945.8 T
+        J10 =   49.24      +  90274.4 T 
+
+        Ja  =   99.360714  +   4850.4046 T
+        Jb  =  175.895369  +   1191.9605 T
+        Jc  =  300.323162  +    262.5475 T
+        Jd  =  114.012305  +   6070.2476 T
+        Je  =   49.511251  +     64.3000 T
+
+     Here
+
+        T represents centuries past J2000 ( TDB )
+
+        J1-J10 and Ja-Je are the nutation precession angles. The angles
+        J9 and J10 are equal to 2*J1 and 2*J2, respectively.
+ 
+        Angles J9 and J10 are not present in [1]; they have been added
+        to fit the terms 2*J1 and 2*J2, which appear in the orientation
+        models of several satellites, into a form that can be accepted
+        by the PCK system.
+
+     The assignment of the nutation precession angles for the
+     Jupiter system is as follows:
+ 
+        BODY5_NUT_PREC_ANGLES  = (    73.32      91472.9
+                                      24.62      45137.2
+                                     283.90       4850.7
+                                     355.80       1191.3
+                                     119.90        262.1
+                                     229.80         64.3
+                                     352.25       2382.6
+                                     113.35       6070.0   
+                                     146.64     182945.8
+                                      49.24      90274.4  
+                                      99.360714   4850.4046
+                                     175.895369   1191.9605
+                                     300.323162    262.5475
+                                     114.012305   6070.2476
+                                      49.511251     64.3000  )
+
+     You'll see an additional symbol grouped with the ones listed
+     above; it is
+ 
+        BODY599_LONG_AXIS
+ 
+     This term is zero for all bodies except Mars. It represents the
+     angular offset between the meridian containing the longest axis of
+     the triaxial ellipsoid used to model a body's surface and the
+     prime meridian of the body.
+
+     The pattern of the formulas for satellite orientation is similar
+     to that for Jupiter. Example: 2006 IAU values for Io. Again, these
+     values are used as an example only; see the data area below for
+     current values.
+ 
+        Right ascension
+        ---------------
+
+        alpha  = 268.05  -  0.009 T  + 0.094 sin(J3)  +  0.024 sin(J4)
+             0  
+
+        Declination
+        -----------
+
+        delta  =  64.50  +  0.003 T  + 0.040 cos(J3)  +  0.011 cos(J4)
+             0           
+                          
+        Prime meridian
+        --------------
+
+        W      = 200.39  +  203.4889538 d  -  0.085 sin(J3)  -  0.022 sin(J4)
+
+ 
+        d represents days past J2000.
+ 
+        J3 and J4 are nutation precession angles.
+ 
+     The polynomial terms are assigned to symbols by the statements
+ 
+        BODY501_POLE_RA       = (  268.05          -0.009      0. )
+        BODY501_POLE_DEC      = (   64.50           0.003      0. )
+        BODY501_PM            = (  200.39         203.4889538  0. )
+ 
+     The coefficients of the trigonometric terms are assigned to symbols by
+     the statements
+
+        BODY501_NUT_PREC_RA   = (    0.   0.     0.094    0.024   )
+        BODY501_NUT_PREC_DEC  = (    0.   0.     0.040    0.011   )
+        BODY501_NUT_PREC_PM   = (    0.   0.    -0.085   -0.022   )
+
+     501 is the NAIF ID code for Io.
+ 
+     SPICE software expects the models for satellite orientation to
+     follow the form of the model shown here: the polynomial portions of the
+     RA, DEC, and W expressions are expected to be quadratic, the 
+     trigonometric terms for RA and W (satellite prime meridian) are expected 
+     to be linear combinations of sines of nutation precession angles, the 
+     trigonometric terms for DEC are expected to be linear combinations of 
+     cosines of nutation precession angles, and the polynomials for the 
+     nutation precession angles themselves are expected to be linear.
+ 
+     Eventually, the software will handle more complex expressions, we
+     expect.
+ 
+ 
+Shape models
+ 
+     There is only one kind of shape model supported by the SPICE Toolkit
+     software at present: the triaxial ellipsoid. The 2006 IAU report does
+     not use any other models, except in the case of Mars, where 
+     separate values are given for the north and south polar radii.
+ 
+     For each body, three radii are listed:  The first number is
+     the largest equatorial radius (the length of the semi-axis
+     containing the prime meridian), the second number is the smaller
+     equatorial radius, and the third is the polar radius.
+ 
+     Example: Radii of the Earth.
+ 
+        BODY399_RADII     = (     6378.14    6378.14      6356.75   )
+ 
+ 
+Body Numbers and Names
+--------------------------------------------------------
+ 
+ 
+        1  Mercury barycenter
+        2  Venus barycenter
+        3  Earth barycenter
+        4  Mars barycenter
+        5  Jupiter barycenter
+        6  Saturn barycenter
+        7  Uranus barycenter
+        8  Neptune barycenter
+        9  Pluto barycenter
+        10 Sun
+
+ 
+        199 Mercury
+ 
+ 
+        299 Venus
+ 
+ 
+        399 Earth
+ 
+        301 Moon
+ 
+ 
+        499 Mars
+ 
+        401 Phobos      402 Deimos
+ 
+ 
+        599 Jupiter
+ 
+        501 Io          502 Europa      503 Ganymede    504 Callisto
+        505 Amalthea    506 Himalia     507 Elara       508 Pasiphae
+        509 Sinope      510 Lysithea    511 Carme       512 Ananke
+        513 Leda        514 Thebe       515 Adrastea    516 Metis
+ 
+ 
+        699 Saturn
+ 
+        601 Mimas       602 Enceladus   603 Tethys      604 Dione
+        605 Rhea        606 Titan       607 Hyperion    608 Iapetus
+        609 Phoebe      610 Janus       611 Epimetheus  612 Helene
+        613 Telesto     614 Calypso     615 Atlas       616 Prometheus
+        617 Pandora     618 Pan
+ 
+ 
+        799 Uranus
+ 
+        701 Ariel       702 Umbriel     703 Titania     704 Oberon
+        705 Miranda     706 Cordelia    707 Ophelia     708 Bianca
+        709 Cressida    710 Desdemona   711 Juliet      712 Portia
+        713 Rosalind    714 Belinda     715 Puck
+ 
+ 
+        899 Neptune
+ 
+        801 Triton      802 Nereid      803 Naiad       804 Thalassa
+        805 Despina     806 Galatea     807 Larissa     808 Proteus
+ 
+ 
+        999 Pluto
+ 
+        901 Charon
+ 
+ 
+        1000005 Comet 19P/Borrelly
+        1000036 Comet Halley
+        1000093 Comet 9P/Tempel 1
+        1000107 Comet 81P/Wild 2
+
+        2000001 Asteroid Ceres
+        2000004 Asteroid Vesta
+        2000216 Asteroid Kleopatra
+        2000253 Asteroid Mathilde
+        2000433 Asteroid Eros
+        2004179 Asteroid Toutatis
+        2025143 Asteroid Itokawa
+        2431010 Asteroid Ida
+        9511010 Asteroid Gaspra
+        
+ 
+Orientation Constants for the Sun and Planets
+--------------------------------------------------------
+ 
+ 
+Sun
+ 
+     Old values:
+
+        Values are from the 2003 IAU report.
+
+  
+        body10_pole_ra         = (  286.13       0.          0. )
+        body10_pole_dec        = (   63.87       0.          0. )
+        body10_pm              = (   84.10      14.18440     0. )
+        body10_long_axis       = (    0.                        )
+
+     Current values:
+ 
+        \begindata
+ 
+        BODY10_POLE_RA         = (  286.13       0.          0. )
+        BODY10_POLE_DEC        = (   63.87       0.          0. )
+        BODY10_PM              = (   84.176     14.18440     0. )
+        BODY10_LONG_AXIS       = (    0.                        )
+
+        \begintext
+ 
+Mercury
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+
+
+     Current values:
+  
+        \begindata
+
+        BODY199_POLE_RA          = (  281.01     -0.033      0. )
+        BODY199_POLE_DEC         = (   61.45     -0.005      0. )
+        BODY199_PM               = (  329.548     6.1385025  0. )
+ 
+        BODY199_LONG_AXIS        = (    0.                        )
+ 
+        \begintext
+ 
+  
+Venus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY299_POLE_RA          = (  272.76       0.          0. )
+        BODY299_POLE_DEC         = (   67.16       0.          0. )
+        BODY299_PM               = (  160.20      -1.4813688   0. )
+ 
+        BODY299_LONG_AXIS        = (    0.                        )
+ 
+        \begintext
+
+
+Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 report.
+ 
+ 
+     Current values:
+ 
+        \begindata 
+ 
+        BODY399_POLE_RA        = (    0.      -0.641         0. )
+        BODY399_POLE_DEC       = (   90.      -0.557         0. )
+        BODY399_PM             = (  190.147  360.9856235     0. )
+        BODY399_LONG_AXIS      = (    0.                        )
+
+        \begintext
+
+
+        Nutation precession angles for the Earth-Moon system:
+
+           The linear coefficients have been scaled up from degrees/day
+           to degrees/century, because the SPICELIB PCK reader expects
+           these units.  The original constants were:
+        
+                                    125.045D0   -0.0529921D0
+                                    250.089D0   -0.1059842D0
+                                    260.008D0   13.0120009D0
+                                    176.625D0   13.3407154D0
+                                    357.529D0    0.9856003D0
+                                    311.589D0   26.4057084D0
+                                    134.963D0   13.0649930D0
+                                    276.617D0    0.3287146D0
+                                     34.226D0    1.7484877D0
+                                     15.134D0   -0.1589763D0
+                                    119.743D0    0.0036096D0
+                                    239.961D0    0.1643573D0
+                                     25.053D0   12.9590088D0 
+
+
+        \begindata
+
+       
+        BODY3_NUT_PREC_ANGLES  = (  125.045         -1935.5364525000
+                                    250.089         -3871.0729050000
+                                    260.008        475263.3328725000  
+                                    176.625        487269.6299850000
+                                    357.529         35999.0509575000
+                                    311.589        964468.4993100000
+                                    134.963        477198.8693250000
+                                    276.617         12006.3007650000
+                                     34.226         63863.5132425000 
+                                     15.134         -5806.6093575000
+                                    119.743           131.8406400000
+                                    239.961          6003.1503825000 
+                                     25.053        473327.7964200000 )
+
+
+        \begintext
+ 
+
+     Earth north geomagnetic centered dipole:
+
+        Old values:
+
+           Values are from [7].  Note the year of publication was 1971.
+
+           body399_mag_north_pole_lon  =  ( -69.761 )
+           body399_mag_north_pole_lat  =  (  78.565 )
+
+
+        Current values:
+
+           The north dipole location is time-varying.  The values shown
+           below, taken from [8], represent a discrete sampling of the
+           north dipole location from 1945 to 2000. The terms DGRF and
+           IGRF refer to, respectively, "Definitive Geomagnetic
+           Reference Field" and "International Geomagnetic Reference
+           Field."  See references [6], [8], and [9] for details.
+
+           Coordinates are planetocentric. 
+
+             Data source    Lat      Lon
+             -----------   -----    ------
+              DGRF 1945    78.47    291.47
+              DGRF 1950    78.47    291.15
+              DGRF 1955    78.46    290.84
+              DGRF 1960    78.51    290.53
+              DGRF 1965    78.53    290.15
+              DGRF 1970    78.59    289.82
+              DGRF 1975    78.69    289.53
+              DGRF 1980    78.81    289.24 
+              DGRF 1985    78.97    289.10
+              DGRF 1990    79.13    288.89
+              IGRF 1995    79.30    288.59
+              IGRF 2000    79.54    288.43      
+
+
+        Values are given for the epoch 2000 and are from the final row
+        of the above table, which is from [8]. As shown by the table
+        these values constitute a low-accuracy approximation for epochs
+        not close to 2000.
+
+        \begindata
+       
+        BODY399_N_GEOMAG_CTR_DIPOLE_LON  =  ( 288.43 )
+        BODY399_N_GEOMAG_CTR_DIPOLE_LAT  =  (  79.54 )
+
+        \begintext
+
+ 
+Mars
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+   
+     Current values:
+ 
+        \begindata
+ 
+        BODY499_POLE_RA          = (  317.68143   -0.1061      0.  )
+        BODY499_POLE_DEC         = (   52.88650   -0.0609      0.  )
+        BODY499_PM               = (  176.630    350.89198226  0.  )
+
+        \begintext
+ 
+        Source [5] specifies the following value for the lambda_a term
+        (BODY499_LONG_AXIS ) for Mars. This term is the POSITIVE EAST
+        LONGITUDE, measured from the prime meridian, of the meridian
+        containing the longest axis of the reference ellipsoid.
+        (CAUTION: previous values were POSITIVE WEST.)
+
+           body499_long_axis        = (  252.  )
+ 
+        We list this lambda_a value for completeness. The IAU report
+        [1] gives equal values for both equatorial radii, so the
+        lambda_a offset does not apply to the IAU model.
+ 
+        The 2003 IAU report defines M2, the second nutation precession angle,
+        by:
+ 
+                                                2
+           192.93  +  1128.4096700 d  +  8.864 T
+ 
+        We truncate the M2 series to a linear expression, because the PCK
+        software cannot handle the quadratic term.
+ 
+        Again, the linear terms are scaled by 36525.0:
+ 
+            -0.4357640000000000       -->     -15916.28010000000
+          1128.409670000000           -->   41215163.19675000
+            -1.8151000000000000E-02   -->       -662.9652750000000
+ 
+        We also introduce a fourth nutation precession angle, which
+        is the pi/2-complement of the third angle.  This angle is used
+        in computing the prime meridian location for Deimos.  See the
+        discussion of this angle below in the section containing orientation
+        constants for Deimos.
+ 
+        \begindata
+
+        BODY4_NUT_PREC_ANGLES  = (  169.51     -15916.2801
+                                    192.93   41215163.19675
+                                     53.47       -662.965275
+                                     36.53        662.965275  )
+ 
+        \begintext
+ 
+ 
+Jupiter
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report.
+
+
+           body599_pole_ra        = (   268.05      -0.009       0. )
+           body599_pole_dec       = (    64.49       0.003       0. )
+           body599_pm             = (   284.95     870.5366420   0. )
+           body599_long_axis      = (     0.                        )
+
+           body5_nut_prec_angles  = (    73.32   91472.9
+                                         24.62   45137.2
+                                        283.90    4850.7
+                                        355.80    1191.3
+                                        119.90     262.1
+                                        229.80      64.3
+                                        352.35    2382.6
+                                        113.35    6070.0   
+                                        146.64  182945.8
+                                         49.24   90274.4  )
+ 
+
+                   
+     Current values:
+ 
+        The number of nutation precession angles is 15. The ninth and
+        tenth are twice the first and second, respectively. The
+        eleventh through fifteenth correspond to angles JA-JE in
+        the 2006 IAU report; angles JA-JE were not used prior to that
+        report.
+
+        \begindata
+ 
+ 
+        BODY599_POLE_RA        = (   268.056595     -0.006499       0. )
+        BODY599_POLE_DEC       = (    64.495303      0.002413       0. )
+        BODY599_PM             = (   284.95        870.5366420      0. )
+        BODY599_LONG_AXIS      = (     0.                        )
+ 
+        BODY599_NUT_PREC_RA  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000117
+                                                                0.000938
+                                                                0.001432
+                                                                0.000030
+                                                                0.002150 )
+
+        BODY599_NUT_PREC_DEC = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000050
+                                                                0.000404
+                                                                0.000617
+                                                               -0.000013
+                                                                0.000926 )
+
+        BODY599_NUT_PREC_PM  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0  ) 
+
+
+        BODY5_NUT_PREC_ANGLES  = (    73.32      91472.9
+                                      24.62      45137.2
+                                     283.90       4850.7
+                                     355.80       1191.3
+                                     119.90        262.1
+                                     229.80         64.3
+                                     352.25       2382.6
+                                     113.35       6070.0   
+                                     146.64     182945.8
+                                      49.24      90274.4  
+                                      99.360714   4850.4046
+                                     175.895369   1191.9605
+                                     300.323162    262.5475
+                                     114.012305   6070.2476
+                                      49.511251     64.3000  )
+        \begintext
+ 
+ 
+Saturn
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+
+     Current values:
+ 
+        \begindata
+
+        BODY699_POLE_RA        = (    40.589    -0.036      0.  )
+        BODY699_POLE_DEC       = (    83.537    -0.004      0.  )
+        BODY699_PM             = (    38.90    810.7939024  0.  )
+        BODY699_LONG_AXIS      = (     0.                       )
+ 
+        \begintext
+ 
+        The first seven angles given here are the angles S1 
+        through S7 from the 2000 report; the eighth and
+        ninth angles are 2*S1 and 2*S2, respectively.
+ 
+ 
+        \begindata
+
+        BODY6_NUT_PREC_ANGLES  = (  353.32   75706.7
+                                     28.72   75706.7  
+                                    177.40  -36505.5 
+                                    300.00   -7225.9 
+                                    316.45     506.2
+                                    345.20   -1016.3  
+                                     29.80     -52.1
+                                    706.64  151413.4
+                                     57.44  151413.4  )
+        \begintext
+ 
+ 
+Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY799_POLE_RA        = (  257.311     0.         0.  )
+        BODY799_POLE_DEC       = (  -15.175     0.         0.  )
+        BODY799_PM             = (  203.81   -501.1600928  0.  )
+        BODY799_LONG_AXIS      = (    0.                       )
+ 
+        \begintext
+        
+        The first 16 angles given here are the angles U1 
+        through U16 from the 2000 report; the 17th and
+        18th angles are 2*U11 and 2*U12, respectively.
+        
+        \begindata
+         
+        BODY7_NUT_PREC_ANGLES  = (  115.75   54991.87
+                                    141.69   41887.66
+                                    135.03   29927.35
+                                     61.77   25733.59  
+                                    249.32   24471.46
+                                     43.86   22278.41 
+                                     77.66   20289.42  
+                                    157.36   16652.76  
+                                    101.81   12872.63   
+                                    138.64    8061.81
+                                    102.23   -2024.22 
+                                    316.41    2863.96  
+                                    304.01     -51.94  
+                                    308.71     -93.17 
+                                    340.82     -75.32 
+                                    259.14    -504.81 
+                                    204.46   -4048.44
+                                    632.82    5727.92     )
+                                    
+        \begintext
+ 
+ 
+ 
+Neptune
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+
+        \begindata        
+ 
+           BODY899_POLE_RA        = (  299.36     0.         0. )
+           BODY899_POLE_DEC       = (   43.46     0.         0. )
+           BODY899_PM             = (  253.18   536.3128492  0. )
+           BODY899_LONG_AXIS      = (    0.                     )
+
+
+           BODY899_NUT_PREC_RA    = (  0.70 0. 0. 0. 0. 0. 0. 0. ) 
+           BODY899_NUT_PREC_DEC   = ( -0.51 0. 0. 0. 0. 0. 0. 0. )
+           BODY899_NUT_PREC_PM    = ( -0.48 0. 0. 0. 0. 0. 0. 0. )
+
+        \begintext
+ 
+           The 2000 report defines the nutation precession angles
+ 
+              N, N1, N2, ... , N7
+ 
+           and also uses the multiples of N1 and N7
+ 
+              2*N1
+ 
+           and
+ 
+              2*N7, 3*N7, ..., 9*N7
+ 
+           In this file, we treat the angles and their multiples as
+           separate angles.  In the kernel variable
+ 
+              BODY8_NUT_PREC_ANGLES
+ 
+           the order of the angles is
+ 
+              N, N1, N2, ... , N7, 2*N1, 2*N7, 3*N7, ..., 9*N7
+ 
+           Each angle is defined by a linear polynomial, so two
+           consecutive array elements are allocated for each
+           angle.  The first term of each pair is the constant term,
+           the second is the linear term.
+ 
+        \begindata 
+
+              BODY8_NUT_PREC_ANGLES = (   357.85         52.316
+                                          323.92      62606.6
+                                          220.51      55064.2 
+                                          354.27      46564.5
+                                           75.31      26109.4 
+                                           35.36      14325.4
+                                          142.61       2824.6  
+                                          177.85         52.316 
+                                          647.840    125213.200
+                                          355.700       104.632
+                                          533.550       156.948
+                                          711.400       209.264
+                                          889.250       261.580
+                                         1067.100       313.896
+                                         1244.950       366.212
+                                         1422.800       418.528
+                                         1600.650       470.844   )
+                                         
+        \begintext
+ 
+ 
+ 
+Pluto
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report. 
+ 
+        BODY999_POLE_RA        = (  313.02    0.         0.   )
+        BODY999_POLE_DEC       = (    9.09    0.         0.   )
+        BODY999_PM             = (  236.77  -56.3623195  0.   )
+        BODY999_LONG_AXIS      = (    0.                      )
+
+
+     Current values:
+ 
+        \begindata
+ 
+        BODY999_POLE_RA        = (  312.993   0.          0. )
+        BODY999_POLE_DEC       = (    6.163   0.          0. )
+        BODY999_PM             = (  237.305  -56.3625225  0. )
+        BODY999_LONG_AXIS      = (    0.                     )
+
+        \begintext
+ 
+ 
+ 
+ 
+Orientation constants for the satellites
+--------------------------------------------------------
+ 
+ 
+Satellites of Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+
+ 
+     New values:
+ 
+        \begindata
+ 
+ 
+
+
+
+        BODY301_POLE_RA      = (  269.9949        0.0031        0.      )
+        BODY301_POLE_DEC     = (   66.5392        0.0130        0.      )
+        BODY301_PM           = (   38.3213       13.17635815   -1.4D-12 )
+        BODY301_LONG_AXIS    = (    0.                                  )
+   
+        BODY301_NUT_PREC_RA  = (   -3.8787   -0.1204   0.0700   -0.0172
+                                    0.0       0.0072   0.0       0.0
+                                    0.0      -0.0052   0.0       0.0
+                                    0.0043                              )
+        
+        BODY301_NUT_PREC_DEC = (   1.5419     0.0239  -0.0278    0.0068
+                                   0.0       -0.0029   0.0009    0.0
+                                   0.0        0.0008   0.0       0.0     
+                                  -0.0009                               )
+        
+        BODY301_NUT_PREC_PM  = (   3.5610     0.1208  -0.0642    0.0158
+                                   0.0252    -0.0066  -0.0047   -0.0046
+                                   0.0028     0.0052   0.0040    0.0019
+                                  -0.0044                               )
+        \begintext
+ 
+
+ 
+Satellites of Mars
+ 
+ 
+     Phobos
+ 
+          Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+          Current values:
+ 
+            The quadratic prime meridian term is scaled by 1/36525**2:
+ 
+               8.864000000000000   --->   6.6443009930565219E-09
+ 
+        \begindata
+ 
+          BODY401_POLE_RA  = ( 317.68    -0.108     0.                     )
+          BODY401_POLE_DEC = (  52.90    -0.061     0.                     )
+          BODY401_PM       = (  35.06  1128.8445850 6.6443009930565219E-09 )
+                                       
+          BODY401_LONG_AXIS     = (    0.   )
+ 
+          BODY401_NUT_PREC_RA   = (   1.79    0.    0.   0. )
+          BODY401_NUT_PREC_DEC  = (  -1.08    0.    0.   0. )
+          BODY401_NUT_PREC_PM   = (  -1.42   -0.78  0.   0. )
+
+
+        \begintext
+ 
+ 
+     Deimos
+ 
+        Old values:
+ 
+           Values are unchanged in the 2006 IAU report.
+ 
+ 
+        New values:
+ 
+           The Deimos prime meridian expression is:
+ 
+ 
+                                                     2
+              W = 79.41  +  285.1618970 d  -  0.520 T  -  2.58 sin M
+                                                                    3
+ 
+                                                       +  0.19 cos M .
+                                                                    3
+ 
+ 
+           At the present time, the PCK kernel software (the routine
+           BODEUL in particular) cannot handle the cosine term directly,
+           but we can represent it as
+ 
+              0.19 sin M
+                        4
+ 
+           where
+ 
+              M   =  90.D0 - M
+               4              3
+ 
+           Therefore, the nutation precession angle assignments for Phobos
+           and Deimos contain four coefficients rather than three.
+ 
+           The quadratic prime meridian term is scaled by 1/36525**2:
+ 
+              -0.5200000000000000  --->   -3.8978300049519307E-10
+ 
+        \begindata
+ 
+           BODY402_POLE_RA       = (  316.65     -0.108       0.           )
+           BODY402_POLE_DEC      = (   53.52     -0.061       0.           )
+           BODY402_PM            = (   79.41    285.1618970  -3.897830D-10 )
+           BODY402_LONG_AXIS     = (    0.                                 )
+ 
+           BODY402_NUT_PREC_RA   = (    0.   0.   2.98    0.   )
+           BODY402_NUT_PREC_DEC  = (    0.   0.  -1.78    0.   )
+           BODY402_NUT_PREC_PM   = (    0.   0.  -2.58    0.19 )
+
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Jupiter
+ 
+ 
+     Io
+ 
+          Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+          Current values:
+         
+        \begindata
+ 
+        BODY501_POLE_RA       = (  268.05          -0.009      0. )
+        BODY501_POLE_DEC      = (   64.50           0.003      0. )
+        BODY501_PM            = (  200.39         203.4889538  0. )
+        BODY501_LONG_AXIS     = (    0.                           )
+ 
+        BODY501_NUT_PREC_RA   = (    0.   0.     0.094    0.024   )
+        BODY501_NUT_PREC_DEC  = (    0.   0.     0.040    0.011   )
+        BODY501_NUT_PREC_PM   = (    0.   0.    -0.085   -0.022   )
+
+        \begintext
+ 
+ 
+ 
+     Europa
+ 
+ 
+        Old values:
+
+           Values are from the 2003 IAU report.
+
+
+        body502_pole_ra       = (  268.08          -0.009      0.   )
+        body502_pole_dec      = (   64.51           0.003      0.   )
+        body502_pm            = (   35.67         101.3747235  0.   )
+        body502_long_axis     = (    0.                             )
+ 
+        body502_nut_prec_ra   = ( 0. 0. 0.   1.086   0.060   0.015   0.009 )
+        body502_nut_prec_dec  = ( 0. 0. 0.   0.468   0.026   0.007   0.002 )
+        body502_nut_prec_pm   = ( 0. 0. 0.  -0.980  -0.054  -0.014  -0.008 )
+        
+
+        Current values:
+ 
+        \begindata 
+ 
+        BODY502_POLE_RA       = (  268.08          -0.009      0.   )
+        BODY502_POLE_DEC      = (   64.51           0.003      0.   )
+        BODY502_PM            = (   36.022        101.3747235  0.   )
+        BODY502_LONG_AXIS     = (    0.                             )
+ 
+        BODY502_NUT_PREC_RA   = ( 0. 0. 0.   1.086   0.060   0.015   0.009 )
+        BODY502_NUT_PREC_DEC  = ( 0. 0. 0.   0.468   0.026   0.007   0.002 )
+        BODY502_NUT_PREC_PM   = ( 0. 0. 0.  -0.980  -0.054  -0.014  -0.008 )
+ 
+        \begintext
+ 
+ 
+     Ganymede
+ 
+        Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+
+        Current values:
+        
+        \begindata
+    
+        BODY503_POLE_RA       = (  268.20         -0.009       0.  )
+        BODY503_POLE_DEC      = (   64.57          0.003       0.  )
+        BODY503_PM            = (   44.064        50.3176081   0.  )
+        BODY503_LONG_AXIS     = (    0.                            )
+
+        BODY503_NUT_PREC_RA   = ( 0. 0. 0.  -0.037   0.431   0.091   )
+        BODY503_NUT_PREC_DEC  = ( 0. 0. 0.  -0.016   0.186   0.039   )
+        BODY503_NUT_PREC_PM   = ( 0. 0. 0.   0.033  -0.389  -0.082   )
+ 
+        \begintext
+ 
+ 
+     Callisto
+ 
+        Old values:
+
+             Values are unchanged in the 2006 IAU report.
+        
+        
+        Current values:
+        
+        
+        \begindata
+  
+        BODY504_POLE_RA       = (   268.72    -0.009       0.  )
+        BODY504_POLE_DEC      = (    64.83     0.003       0.  )
+        BODY504_PM            = (   259.51    21.5710715   0.  )
+        BODY504_LONG_AXIS     = (     0.                       )
+ 
+        BODY504_NUT_PREC_RA   = ( 0. 0. 0. 0.  -0.068   0.590  0.   0.010 )
+        BODY504_NUT_PREC_DEC  = ( 0. 0. 0. 0.  -0.029   0.254  0.  -0.004 )
+        BODY504_NUT_PREC_PM   = ( 0. 0. 0. 0.   0.061  -0.533  0.  -0.009 )
+ 
+        \begintext
+ 
+ 
+     Amalthea
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.        
+        
+        Current values:
+         
+        \begindata
+ 
+        BODY505_POLE_RA       = (   268.05    -0.009      0.  )
+        BODY505_POLE_DEC      = (    64.49     0.003      0.  )
+        BODY505_PM            = (   231.67   722.6314560  0.  )
+        BODY505_LONG_AXIS     = (     0.                      )
+ 
+        BODY505_NUT_PREC_RA  = ( -0.84  0. 0. 0. 0. 0. 0. 0.   0.01  0. )
+        BODY505_NUT_PREC_DEC = ( -0.36  0. 0. 0. 0. 0. 0. 0.   0.    0. )
+        BODY505_NUT_PREC_PM  = (  0.76  0. 0. 0. 0. 0. 0. 0.  -0.01  0. )
+ 
+        \begintext
+ 
+ 
+     Thebe
+ 
+ 
+        Old values:
+                
+           Values are unchanged in the 2006 IAU report.                
+          
+        Current values:
+        
+        \begindata
+ 
+        BODY514_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY514_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY514_PM            = (    8.56    533.7004100   0.  )
+        BODY514_LONG_AXIS     = (    0.                        )
+ 
+        BODY514_NUT_PREC_RA  = ( 0.  -2.11  0. 0. 0. 0. 0. 0. 0.  0.04 )
+        BODY514_NUT_PREC_DEC = ( 0.  -0.91  0. 0. 0. 0. 0. 0. 0.  0.01 )
+        BODY514_NUT_PREC_PM  = ( 0.   1.91  0. 0. 0. 0. 0. 0. 0. -0.04 )
+ 
+        \begintext
+ 
+ 
+     Adrastea
+ 
+        Old values:
+                
+           Values are unchanged in the 2006 IAU report.                
+        
+        Current values:
+        
+        \begindata
+ 
+ 
+ 
+        BODY515_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY515_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY515_PM            = (   33.29   1206.9986602   0.  )
+        BODY515_LONG_AXIS     = (    0.                        )
+
+        \begintext
+ 
+ 
+     Metis
+  
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+              
+        Current values:
+           
+        \begindata
+
+        BODY516_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY516_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY516_PM            = (  346.09   1221.2547301   0.  )
+        BODY516_LONG_AXIS     = (    0.                        )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Saturn
+      
+     
+     Mimas
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+               
+        Current values:
+ 
+        \begindata
+  
+           BODY601_POLE_RA       = (   40.66     -0.036      0.  )
+           BODY601_POLE_DEC      = (   83.52     -0.004      0.  )
+           BODY601_PM            = (  337.46    381.9945550  0.  )
+           BODY601_LONG_AXIS     = (     0.                      )
+ 
+           BODY601_NUT_PREC_RA   = ( 0. 0.   13.56  0.    0.    0. 0. 0. 0. )
+           BODY601_NUT_PREC_DEC  = ( 0. 0.   -1.53  0.    0.    0. 0. 0. 0. )
+           BODY601_NUT_PREC_PM   = ( 0. 0.  -13.48  0.  -44.85  0. 0. 0. 0. )
+
+        \begintext
+ 
+ 
+     Enceladus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+               
+        Current values:
+ 
+        \begindata
+ 
+           BODY602_POLE_RA       = (   40.66    -0.036       0. )
+           BODY602_POLE_DEC      = (   83.52    -0.004       0. )
+           BODY602_PM            = (    2.82   262.7318996   0. )
+           BODY602_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+     Tethys
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+ 
+           BODY603_POLE_RA       = (   40.66    -0.036       0. )
+           BODY603_POLE_DEC      = (   83.52    -0.004       0. )
+           BODY603_PM            = (   10.45   190.6979085   0. )
+           BODY603_LONG_AXIS     = (    0.                      )
+ 
+           BODY603_NUT_PREC_RA   = ( 0. 0. 0.   9.66   0.    0.  0.  0.  0. )
+           BODY603_NUT_PREC_DEC  = ( 0. 0. 0.  -1.09   0.    0.  0.  0.  0. )
+           BODY603_NUT_PREC_PM   = ( 0. 0. 0.  -9.60   2.23  0.  0.  0.  0. )
+
+        \begintext
+ 
+ 
+     Dione
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+   
+           BODY604_POLE_RA       = (  40.66      -0.036      0.  )
+           BODY604_POLE_DEC      = (  83.52      -0.004      0.  )
+           BODY604_PM            = (  357.00    131.5349316  0.  )
+           BODY604_LONG_AXIS     = (    0.                       )
+
+        \begintext
+ 
+ 
+ 
+     Rhea
+     
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+   
+           BODY605_POLE_RA       = (   40.38   -0.036       0. )
+           BODY605_POLE_DEC      = (   83.55   -0.004       0. )
+           BODY605_PM            = (  235.16   79.6900478   0. )
+           BODY605_LONG_AXIS     = (    0.                     )
+ 
+           BODY605_NUT_PREC_RA   = ( 0. 0. 0. 0. 0.   3.10   0. 0. 0. )
+           BODY605_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0.  -0.35   0. 0. 0. )
+           BODY605_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  -3.08   0. 0. 0. )
+ 
+        \begintext
+ 
+ 
+ 
+     Titan
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY606_POLE_RA       = (    36.41   -0.036      0. )
+           BODY606_POLE_DEC      = (    83.94   -0.004      0. )
+           BODY606_PM            = (   189.64   22.5769768  0. )
+           BODY606_LONG_AXIS     = (     0.                    )
+ 
+           BODY606_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 0.  2.66  0. 0 )
+           BODY606_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 0. -0.30  0. 0 )
+           BODY606_NUT_PREC_PM   = ( 0. 0. 0. 0. 0. 0. -2.64  0. 0 )
+
+        \begintext
+ 
+ 
+ 
+     Hyperion
+ 
+         The IAU report does not give an orientation model for Hyperion.
+         Hyperion's rotation is in chaotic and is not predictable for
+         long periods.
+
+ 
+     Iapetus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY608_POLE_RA       = (   318.16  -3.949      0.  )
+           BODY608_POLE_DEC      = (    75.03  -1.143      0.  )
+           BODY608_PM            = (   350.20   4.5379572  0.  )
+           BODY608_LONG_AXIS     = (     0.                    )
+
+        \begintext
+ 
+ 
+ 
+     Phoebe
+ 
+
+        Old values:
+        
+           Values are from the 2003 IAU report. 
+  
+           body609_pole_ra       = ( 355.00       0.         0.  )
+           body609_pole_dec      = (  68.70       0.         0.  )
+           body609_pm            = ( 304.70     930.8338720  0.  )
+           body609_long_axis     = (    0.                       )
+
+        Current values:
+ 
+        \begindata 
+  
+           BODY609_POLE_RA       = ( 356.90       0.         0.  )
+           BODY609_POLE_DEC      = (  77.80       0.         0.  )
+           BODY609_PM            = ( 178.58     931.639      0.  )
+           BODY609_LONG_AXIS     = (    0.                       )
+
+        \begintext
+ 
+ 
+     Janus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY610_POLE_RA       = (  40.58    -0.036       0. )
+           BODY610_POLE_DEC      = (  83.52    -0.004       0. )
+           BODY610_PM            = (  58.83   518.2359876   0. )
+           BODY610_LONG_AXIS     = (   0.                      )
+ 
+           BODY610_NUT_PREC_RA   = ( 0. -1.623  0. 0. 0. 0. 0. 0.  0.023 )
+           BODY610_NUT_PREC_DEC  = ( 0. -0.183  0. 0. 0. 0. 0. 0.  0.001 )
+           BODY610_NUT_PREC_PM   = ( 0.  1.613  0. 0. 0. 0. 0. 0. -0.023 )
+ 
+        \begintext
+ 
+ 
+ 
+     Epimetheus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+         
+        Current values:
+ 
+        \begindata 
+  
+           BODY611_POLE_RA       = (  40.58    -0.036        0. )
+           BODY611_POLE_DEC      = (  83.52    -0.004        0. )
+           BODY611_PM            = ( 293.87   518.4907239    0. )
+           BODY611_LONG_AXIS     = (   0.                       )
+ 
+           BODY611_NUT_PREC_RA   = ( -3.153   0. 0. 0. 0. 0. 0.   0.086  0. )
+           BODY611_NUT_PREC_DEC  = ( -0.356   0. 0. 0. 0. 0. 0.   0.005  0. )
+           BODY611_NUT_PREC_PM   = (  3.133   0. 0. 0. 0. 0. 0.  -0.086  0. )
+
+        \begintext
+ 
+ 
+ 
+     Helene
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY612_POLE_RA       = (  40.85     -0.036        0. )
+           BODY612_POLE_DEC      = (  83.34     -0.004        0. )
+           BODY612_PM            = ( 245.12    131.6174056    0. )
+           BODY612_LONG_AXIS     = (   0.                        )
+
+        \begintext
+ 
+ 
+ 
+     Telesto
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY613_POLE_RA       = ( 50.51    -0.036      0.  )
+           BODY613_POLE_DEC      = ( 84.06    -0.004      0.  )
+           BODY613_PM            = ( 56.88   190.6979332  0.  )
+           BODY613_LONG_AXIS     = (  0.                      )
+
+        \begintext
+
+ 
+ 
+     Calypso
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY614_POLE_RA       = (   36.41    -0.036        0.  )
+           BODY614_POLE_DEC      = (   85.04    -0.004        0.  )
+           BODY614_PM            = (  153.51   190.6742373    0.  )
+           BODY614_LONG_AXIS     = (    0.                        )
+ 
+        \begintext
+ 
+ 
+ 
+     Atlas
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY615_POLE_RA       = (   40.58     -0.036      0. )
+           BODY615_POLE_DEC      = (   83.53     -0.004      0. )  
+           BODY615_PM            = (  137.88    598.3060000  0. )
+           BODY615_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+     Prometheus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY616_POLE_RA       = (  40.58      -0.036    )
+           BODY616_POLE_DEC      = (  83.53      -0.004    )
+           BODY616_PM            = ( 296.14     587.289000 )
+           BODY616_LONG_AXIS     = (   0.                  )
+ 
+        \begintext
+ 
+ 
+ 
+     Pandora
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY617_POLE_RA       = (   40.58     -0.036      0.  )
+           BODY617_POLE_DEC      = (   83.53     -0.004      0.  )
+           BODY617_PM            = (  162.92    572.7891000  0.  )
+           BODY617_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+ 
+ 
+ 
+     Pan
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY618_POLE_RA       = (   40.6     -0.036       0. )
+           BODY618_POLE_DEC      = (   83.5     -0.004       0. )
+           BODY618_PM            = (   48.8    626.0440000   0. )
+           BODY618_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+ 
+ 
+Satellites of Uranus
+ 
+  
+ 
+     Ariel
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+
+        \begindata 
+
+           BODY701_POLE_RA       = ( 257.43     0.          0. )
+           BODY701_POLE_DEC      = ( -15.10     0.          0. )
+           BODY701_PM            = ( 156.22  -142.8356681   0. )
+           BODY701_LONG_AXIS     = (   0.                      )
+ 
+           BODY701_NUT_PREC_RA   = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.    0.    0.29 )
+ 
+           BODY701_NUT_PREC_DEC  = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.    0.    0.28 )
+ 
+           BODY701_NUT_PREC_PM   = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.   0.05   0.08 )
+        \begintext
+ 
+ 
+ 
+     Umbriel
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY702_POLE_RA       = (  257.43     0.          0. )
+           BODY702_POLE_DEC      = (  -15.10     0.          0. )
+           BODY702_PM            = (  108.05   -86.8688923   0. )
+           BODY702_LONG_AXIS     = (    0.                      )
+ 
+           BODY702_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.   0.    0.   0.21 )
+ 
+           BODY702_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.   0.    0.   0.20 )
+ 
+           BODY702_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0.  -0.09  0.   0.06 )
+
+        \begintext
+ 
+ 
+ 
+     Titania
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY703_POLE_RA       = (  257.43    0.          0. )
+           BODY703_POLE_DEC      = (  -15.10    0.          0. )
+           BODY703_PM            = (   77.74  -41.3514316   0. )
+           BODY703_LONG_AXIS     = (    0.                     )
+ 
+           BODY703_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.29 )
+ 
+           BODY703_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.28 )
+ 
+           BODY703_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.08 )
+        \begintext
+ 
+ 
+ 
+     Oberon
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY704_POLE_RA       = (  257.43    0.          0. )
+           BODY704_POLE_DEC      = (  -15.10    0.          0. )
+           BODY704_PM            = (    6.77  -26.7394932   0. )
+           BODY704_LONG_AXIS     = (    0.                     )
+ 
+ 
+           BODY704_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.16 )
+ 
+           BODY704_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.16 )
+ 
+           BODY704_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0.04 )
+        \begintext
+ 
+ 
+ 
+     Miranda
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+
+           BODY705_POLE_RA      = (  257.43     0.         0. )
+           BODY705_POLE_DEC     = (  -15.08     0.         0. )
+           BODY705_PM           = (   30.70  -254.6906892  0. )
+           BODY705_LONG_AXIS    = (    0.                     )
+ 
+           BODY705_NUT_PREC_RA  = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    4.41   0.     0.    0.    0. 
+                                    0.    -0.04   0.             )
+ 
+           BODY705_NUT_PREC_DEC = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    4.25   0.     0.    0.    0. 
+                                    0.    -0.02   0.             )
+ 
+           BODY705_NUT_PREC_PM  = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    1.15  -1.27   0.    0.    0.  
+                                    0.    -0.09   0.15           )
+        \begintext
+ 
+ 
+ 
+     Cordelia
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY706_POLE_RA      = (   257.31      0.         0.  )
+           BODY706_POLE_DEC     = (   -15.18      0.         0.  )
+           BODY706_PM           = (   127.69  -1074.5205730  0.  )
+           BODY706_LONG_AXIS    = (     0.                       )
+ 
+           BODY706_NUT_PREC_RA  = (   -0.15    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY706_NUT_PREC_DEC = (    0.14    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )  
+
+           BODY706_NUT_PREC_PM  = (   -0.04    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             ) 
+ 
+        \begintext
+ 
+ 
+
+     Ophelia
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+   
+           BODY707_POLE_RA      = (  257.31     0.         0. )
+           BODY707_POLE_DEC     = (  -15.18     0.         0. )
+           BODY707_PM           = (  130.35  -956.4068150  0. )
+           BODY707_LONG_AXIS    = (    0.                     )
+ 
+           BODY707_NUT_PREC_RA  = (    0.     -0.09   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY707_NUT_PREC_DEC = (    0.      0.09   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY707_NUT_PREC_PM  = (    0.     -0.03   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+ 
+        \begintext
+ 
+ 
+ 
+     Bianca
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY708_POLE_RA      = (  257.31     0.         0.  )
+           BODY708_POLE_DEC     = (  -15.18     0.         0.  )
+           BODY708_PM           = (  105.46  -828.3914760  0.  )
+           BODY708_LONG_AXIS    = (    0.                      )
+ 
+           BODY708_NUT_PREC_RA  = (    0.      0.    -0.16    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+           BODY708_NUT_PREC_DEC = (    0.      0.     0.16    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+           BODY708_NUT_PREC_PM  = (    0.      0.    -0.04    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+        \begintext
+ 
+ 
+ 
+     Cressida
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+ 
+           BODY709_POLE_RA      = (  257.31      0.          0.  )
+           BODY709_POLE_DEC     = (  -15.18      0.          0.  )
+           BODY709_PM           = (   59.16   -776.5816320   0.  )
+           BODY709_LONG_AXIS    = (    0.                        )
+ 
+
+           BODY709_NUT_PREC_RA  = (    0.      0.     0.     -0.04   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+           BODY709_NUT_PREC_DEC = (    0.      0.     0.      0.04   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+           BODY709_NUT_PREC_PM  = (    0.      0.     0.     -0.01   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+        \begintext
+ 
+ 
+ 
+     Desdemona
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+  
+           BODY710_POLE_RA      = ( 257.31      0.           0.  )
+           BODY710_POLE_DEC     = ( -15.18      0.           0.  )
+           BODY710_PM           = (  95.08   -760.0531690    0.  )
+           BODY710_LONG_AXIS    = (   0.                         )
+ 
+           BODY710_NUT_PREC_RA  = (   0.      0.     0.      0.    -0.17 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY710_NUT_PREC_DEC = (   0.      0.     0.      0.     0.16 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY710_NUT_PREC_PM  = (   0.      0.     0.      0.    -0.04  
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+
+        \begintext
+ 
+ 
+ 
+     Juliet
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY711_POLE_RA      = (  257.31     0.           0.   )
+           BODY711_POLE_DEC     = (  -15.18     0.           0.   )
+           BODY711_PM           = (  302.56  -730.1253660    0.   )
+           BODY711_LONG_AXIS    = (    0.                         )
+ 
+           BODY711_NUT_PREC_RA  = (   0.      0.     0.      0.     0.  
+                                     -0.06    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+ 
+           BODY711_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.06    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+  
+           BODY711_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                     -0.02    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+ 
+        \begintext
+ 
+ 
+ 
+     Portia
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+    
+           BODY712_POLE_RA      = (  257.31      0.           0.   )
+           BODY712_POLE_DEC     = (  -15.18      0.           0.   )
+           BODY712_PM           = (   25.03   -701.4865870    0.   )
+           BODY712_LONG_AXIS    = (    0.                          )
+ 
+           BODY712_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.     -0.09   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY712_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.09   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+           BODY712_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.     -0.02   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+        \begintext
+ 
+ 
+ 
+     Rosalind
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+   
+           BODY713_POLE_RA      = ( 257.31      0.          0.  )
+           BODY713_POLE_DEC     = ( -15.18      0.          0.  )
+           BODY713_PM           = ( 314.90   -644.6311260   0.  )
+           BODY713_LONG_AXIS    = (   0.                        )
+ 
+           BODY713_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.    -0.29    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+           BODY713_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.28    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.              )
+
+           BODY713_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.    -0.08    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.              )
+ 
+        \begintext
+ 
+ 
+ 
+     Belinda
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY714_POLE_RA      = (   257.31      0.         0. )
+           BODY714_POLE_DEC     = (   -15.18      0.         0. )
+           BODY714_PM           = (   297.46   -577.3628170  0. )
+           BODY714_LONG_AXIS    = (     0.                      )
+ 
+           BODY714_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.     -0.03   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY714_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.03   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY714_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.     -0.01   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+        \begintext
+ 
+ 
+ 
+     Puck
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY715_POLE_RA      = (  257.31      0.         0.  )
+           BODY715_POLE_DEC     = (  -15.18      0.         0.  )
+           BODY715_PM           = (   91.24   -472.5450690  0.  )
+           BODY715_LONG_AXIS    = (    0.                       )
+ 
+           BODY715_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.    -0.33 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY715_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.     0.31
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY715_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.    -0.09
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+  
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Neptune
+ 
+ 
+     Triton
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+
+           BODY801_POLE_RA       = ( 299.36     0.         0.  )
+           BODY801_POLE_DEC      = (  41.17     0.         0.  )
+           BODY801_PM            = ( 296.53   -61.2572637  0.  )
+           BODY801_LONG_AXIS     = (   0.                      )
+ 
+ 
+           BODY801_NUT_PREC_RA   = (  0.      0.      0.      0.  
+                                      0.      0.      0.    -32.35    
+                                      0.     -6.28   -2.08   -0.74       
+                                     -0.28   -0.11   -0.07   -0.02    
+                                     -0.01                         )
+ 
+ 
+           BODY801_NUT_PREC_DEC  = (  0.      0.      0.      0.  
+                                      0.      0.      0.     22.55    
+                                      0.      2.10    0.55    0.16   
+                                      0.05    0.02    0.01    0.
+                                      0.                           )
+ 
+ 
+           BODY801_NUT_PREC_PM   = (  0.      0.      0.      0.  
+                                      0.      0.      0.     22.25   
+                                      0.      6.73    2.05    0.74   
+                                      0.28    0.11    0.05    0.02
+                                      0.01                         )
+  
+        \begintext
+ 
+ 
+ 
+ 
+     Nereid
+ 
+        Old values:
+ 
+           Values are from the 1988 IAU report [10].  Note that this 
+           rotation model pre-dated the 1989 Voyager 2 Neptune
+           encounter.
+
+ 
+           body802_pole_ra       = (    273.48    0.        0.  )
+           body802_pole_dec      = (     67.22    0.        0.  )
+           body802_pm            = (    237.22    0.9996465 0.  )
+           body802_long_axis     = (      0.                    )
+ 
+ 
+           The report seems to have a typo:  in the nut_prec_ra expression,
+           where the report gives  -0.51 sin 3N3, we use -0.51 3N2.
+ 
+           body802_nut_prec_ra   = (  0.    -17.81
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                      2.56   -0.51   0.11   -0.03  )
+ 
+           body802_nut_prec_dec  = (  0.     -6.67
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                      0.47   -0.07   0.01          )
+ 
+           body802_nut_prec_pm   = (  0.     16.48
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                     -2.57    0.51 -0.11    0.02  )
+ 
+ 
+ 
+        Current values:
+ 
+           The 2006 report [1] states that values for Nereid are not
+           given because Nereid is not in synchronous rotation with Neptune
+           (p. 167).
+ 
+ 
+ 
+     Naiad
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY803_POLE_RA       = (  299.36      0.          0.  )
+           BODY803_POLE_DEC      = (   43.36      0.          0.  )
+           BODY803_PM            = (  254.06  +1222.8441209   0.  )
+           BODY803_LONG_AXIS     = (    0.                        )
+ 
+ 
+           BODY803_NUT_PREC_RA   = (    0.70     -6.49     0.      0.
+                                        0.        0.       0.      0.
+                                        0.25      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY803_NUT_PREC_DEC  = (   -0.51     -4.75     0.      0.
+                                        0.        0.       0.      0.
+                                        0.09      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY803_NUT_PREC_PM   = (   -0.48      4.40     0.      0.
+                                        0.        0.       0.      0.
+                                       -0.27      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+    
+        \begintext
+ 
+ 
+ 
+ 
+     Thalassa
+ 
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY804_POLE_RA       = (  299.36      0.          0. )
+           BODY804_POLE_DEC      = (   43.45      0.          0. )
+           BODY804_PM            = (  102.06   1155.7555612   0. )  
+           BODY804_LONG_AXIS     = (    0.                       )
+ 
+ 
+           BODY804_NUT_PREC_RA   = (    0.70      0.      -0.28    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+   
+  
+           BODY804_NUT_PREC_DEC  = (   -0.51      0.      -0.21    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0. 
+                                        0.                             )
+ 
+           BODY804_NUT_PREC_PM   = (   -0.48      0.       0.19    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0. 
+                                        0.                             )
+                                                                 
+        \begintext
+ 
+ 
+ 
+     Despina
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY805_POLE_RA       = (  299.36      0.          0. )
+           BODY805_POLE_DEC      = (   43.45      0.          0. )
+           BODY805_PM            = (  306.51  +1075.7341562   0. )
+           BODY805_LONG_AXIS     = (    0.                       )
+ 
+ 
+           BODY805_NUT_PREC_RA   = (    0.70      0.       0.     -0.09
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+ 
+           BODY805_NUT_PREC_DEC  = (   -0.51      0.       0.     -0.07
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+ 
+           BODY805_NUT_PREC_PM   = (   -0.49      0.       0.      0.06
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+        \begintext
+ 
+ 
+ 
+     Galatea
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY806_POLE_RA       = (   299.36      0.          0. )
+           BODY806_POLE_DEC      = (    43.43      0.          0. )
+           BODY806_PM            = (   258.09    839.6597686   0. )
+           BODY806_LONG_AXIS     = (     0.                       )
+ 
+ 
+           BODY806_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                       -0.07      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY806_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                       -0.05      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY806_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.05      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             ) 
+        \begintext
+
+ 
+     Larissa
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+  
+        \begindata
+
+           BODY807_POLE_RA       = (   299.36     0.           0. )
+           BODY807_POLE_DEC      = (    43.41     0.           0. )
+           BODY807_PM            = (   179.41  +649.0534470    0. )
+           BODY807_LONG_AXIS     = (     0.                       )
+ 
+ 
+           BODY807_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                        0.       -0.27     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY807_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                        0.       -0.20     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY807_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.        0.19     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+        \begintext
+ 
+ 
+ 
+     Proteus
+ 
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY808_POLE_RA       = (  299.27      0.          0.  )
+           BODY808_POLE_DEC      = (   42.91      0.          0.  )
+           BODY808_PM            = (   93.38   +320.7654228   0.  )
+           BODY808_LONG_AXIS     = (    0.                        )
+ 
+ 
+           BODY808_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                        0.        0.      -0.05    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY808_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                        0.        0.      -0.04    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY808_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.        0.       0.04    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+   
+        \begintext
+  
+ 
+ 
+ 
+ 
+Satellites of Pluto
+ 
+     Charon
+ 
+        Old values:
+        
+           Values are from the 2003 IAU report. 
+ 
+           body901_pole_ra       = (   313.02     0.         0. )
+           body901_pole_dec      = (     9.09     0.         0. )
+           body901_pm            = (    56.77   -56.3623195  0. )
+           body901_long_axis     = (     0.                     )
+               
+        Current values:
+ 
+        \begindata
+ 
+           BODY901_POLE_RA       = (   312.993    0.         0. )
+           BODY901_POLE_DEC      = (     6.163    0.         0. )
+           BODY901_PM            = (    57.305  -56.3625225  0. )
+           BODY901_LONG_AXIS     = (     0.                     )
+
+        \begintext
+ 
+ 
+ 
+Orientation constants for Selected Comets and Asteroids
+--------------------------------------------------------
+
+
+
+19P/Borrelly
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY1000005_POLE_RA       = (   218.5      0.         0.  )
+           BODY1000005_POLE_DEC      = (   -12.5      0.         0.  )
+           BODY1000005_PM            = (   000.     390.0        0.  )
+           BODY1000005_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+
+
+
+9P/Tempel 1
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY1000093_POLE_RA       = (   294.       0.         0.  )
+           BODY1000093_POLE_DEC      = (    73.       0.         0.  )
+           BODY1000093_PM            = (   252.63   212.064      0.  )
+           BODY1000093_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+
+
+Vesta
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY2000004_POLE_RA       = (   301.      0.         0.  )
+           BODY2000004_POLE_DEC      = (    41.      0.         0.  )
+           BODY2000004_PM            = (   292.   1617.332776   0.  )
+           BODY2000004_LONG_AXIS     = (     0.                     )
+ 
+        \begintext
+
+Eros
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY2000433_POLE_RA       = (   11.35       0.           0. )
+           BODY2000433_POLE_DEC      = (   17.22       0.           0. )
+           BODY2000433_PM            = (  326.07    1639.38864745   0. )
+           BODY2000433_LONG_AXIS     = (    0.                         )
+ 
+        \begintext
+
+
+Itokawa
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY2025143_POLE_RA       = (   90.53       0.           0. )
+           BODY2025143_POLE_DEC      = (  -66.30       0.           0. )
+           BODY2025143_PM            = (  000.0      712.143        0. )
+           BODY2025143_LONG_AXIS     = (    0.                         )
+ 
+        \begintext
+
+
+
+Ida
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY2431010_POLE_RA       = (  168.76      0.         0. )
+           BODY2431010_POLE_DEC      = (   -2.88      0.         0. )
+           BODY2431010_PM            = (  265.95  +1864.6280070  0. )
+           BODY2431010_LONG_AXIS     = (    0.                      )
+ 
+        \begintext
+
+Gaspra
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+               
+        Current values:
+ 
+        \begindata 
+ 
+           BODY9511010_POLE_RA       = (   9.47     0.         0. )
+           BODY9511010_POLE_DEC      = (  26.70     0.         0. )
+           BODY9511010_PM            = (  83.67  1226.9114850  0. )
+           BODY9511010_LONG_AXIS     = (   0.                     )
+
+        \begintext
+
+
+
+
+
+
+
+
+
+ 
+Radii of Sun and Planets
+--------------------------------------------------------
+ 
+ 
+Sun
+ 
+     Value for the Sun is from the [3], page K7.
+ 
+        \begindata
+ 
+        BODY10_RADII      = (   696000.     696000.      696000.     )
+ 
+        \begintext
+ 
+ 
+Mercury
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY199_RADII     = ( 2439.7   2439.7   2439.7 )
+ 
+        \begintext
+ 
+ 
+Venus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY299_RADII     = ( 6051.8   6051.8   6051.8 )
+ 
+        \begintext
+ 
+ 
+Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+
+        \begindata
+ 
+        BODY399_RADII     = ( 6378.14   6378.14   6356.75 )
+ 
+        \begintext
+ 
+ 
+Mars
+ 
+ 
+     Old values:
+
+        body499_radii       = (     3397.      3397.         3375.     )
+ 
+     Current values:
+
+
+        The IAU report gives separate values for the north and south
+        polar radii:
+
+           north:  3373.19
+           south:  3379.21 
+
+        We use the average of these values as the polar radius for
+        the triaxial model.
+ 
+        \begindata
+ 
+        BODY499_RADII       = ( 3396.19   3396.19   3376.20 )
+ 
+        \begintext
+ 
+ 
+ 
+Jupiter
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY599_RADII     = ( 71492   71492   66854 )
+ 
+        \begintext
+ 
+ 
+ 
+Saturn
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY699_RADII     = ( 60268   60268   54364 )
+ 
+        \begintext
+ 
+ 
+ 
+Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY799_RADII     = ( 25559   25559   24973 )
+ 
+        \begintext
+ 
+ 
+ 
+Neptune
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+  
+     Current values:
+ 
+        (Values are for the 1 bar pressure level.)
+ 
+        \begindata
+ 
+        BODY899_RADII     = ( 24764   24764  24341 )
+ 
+        \begintext
+ 
+ 
+ 
+Pluto
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY999_RADII     = ( 1195   1195   1195 )
+ 
+        \begintext
+ 
+
+
+
+Radii of Satellites
+--------------------------------------------------------
+ 
+ 
+Moon
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY301_RADII     = ( 1737.4   1737.4   1737.4 )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Mars
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY401_RADII     = ( 13.4    11.2    9.2 )
+        BODY402_RADII     = (  7.5     6.1    5.2 )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Jupiter
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+         
+        \begindata
+ 
+        BODY501_RADII     = ( 1829.4   1819.3   1815.7  )
+        BODY502_RADII     = ( 1564.13  1561.23  1560.93 )
+        BODY503_RADII     = ( 2632.4   2632.29  2632.35 )
+        BODY504_RADII     = ( 2409.4   2409.2   2409.3  )
+        BODY505_RADII     = (  125       73       64    )
+ 
+        \begintext
+ 
+        Only mean radii are available in the 2003 IAU report for bodies
+        506-513.
+ 
+        \begindata
+ 
+        BODY506_RADII    = (    85       85       85   )
+        BODY507_RADII    = (    40       40       40   )
+        BODY508_RADII    = (    18       18       18   )
+        BODY509_RADII    = (    14       14       14   )
+        BODY510_RADII    = (    12       12       12   )
+        BODY511_RADII    = (    15       15       15   )
+        BODY512_RADII    = (    10       10       10   )
+        BODY513_RADII    = (     5        5        5   )
+        BODY514_RADII    = (    58       49       42   )
+        BODY515_RADII    = (    10        8        7   )
+ 
+        \begintext
+ 
+        The value for the second radius for body 516 is not given in 
+        2003 IAU report.   The values given are:
+ 
+           BODY516_RADII    = (  30   ---   20   )
+ 
+        For use within the SPICE system, we use only the mean radius.
+        \begindata
+ 
+        BODY516_RADII    = (  21.5   21.5  21.5  )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Saturn
+ 
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report.
+    
+        body601_radii     = (  209.1   196.2   191.4 )
+        body602_radii     = (  256.3   247.3   244.6 )
+        body603_radii     = (  535.6   528.2   525.8 )
+        body604_radii     = (  560     560     560   )
+        body605_radii     = (  764     764     764   )
+        body606_radii     = ( 2575    2575    2575   )
+        body607_radii     = (  164     130     107   )
+        body608_radii     = (  718     718     718   )
+        body609_radii     = (  115     110     105   )
+        body610_radii     = (   97.0    95.0    77.0 )
+        body611_radii     = (   69.0    55.0    55.0 )
+ 
+ 
+        Only the first equatorial radius for Helene (body 612) was given in the
+        2003 IAU report:
+ 
+            body612_radii     = (       17.5        ---          ---     )
+ 
+        The mean radius was 16km; we used this radius for all three axes, as
+        we do for the satellites for which only the mean radius is available.
+ 
+ 
+        body612_radii     = (   16      16       16  )
+        body613_radii     = (   15      12.5     7.5 )
+        body614_radii     = (   15.0     8.0     8.0 )
+        body615_radii     = (   18.5    17.2    13.5 )
+        body616_radii     = (   74.0    50.0    34.0 )
+        body617_radii     = (   55.0    44.0    31.0 )
+  
+      
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY601_RADII     = (  207.4     196.8     190.6  )
+        BODY602_RADII     = (  256.6     251.4     248.3  )
+        BODY603_RADII     = (  540.4     531.1     527.5  )
+        BODY604_RADII     = (  563.8     561.0     560.3  )
+        BODY605_RADII     = (  767.2     762.5     763.1  )
+        BODY606_RADII     = ( 2575      2575      2575    )
+        BODY607_RADII     = (  164       130       107    )
+        BODY608_RADII     = (  747.4     747.4     712.4  )
+        BODY609_RADII     = (  108.6     107.7     101.5  )
+        BODY610_RADII     = (   97.0      95.0      77.0  )
+        BODY611_RADII     = (   69.0      55.0      55.0  )
+ 
+        \begintext
+ 
+        Only the first equatorial radius for Helene (body 612) is given in the
+        2006 IAU report:
+ 
+            BODY612_RADII     = (       17.5        ---          ---     )
+ 
+        The mean radius is 16km; we use this radius for all three axes, as
+        we do for the satellites for which only the mean radius is available.
+ 
+ 
+        \begindata
+ 
+        BODY612_RADII     = (  17.5      17.5      17.5  )
+        BODY613_RADII     = (  15        12.5       7.5  )
+        BODY614_RADII     = (  15.0       8.0       8.0  )
+        BODY615_RADII     = (  18.5      17.2      13.5  )
+        BODY616_RADII     = (  74.0      50.0      34.0  )
+        BODY617_RADII     = (  55.0      44.0      31.0  )
+ 
+        \begintext
+ 
+ 
+         For Pan, only a mean radius is given in the 2006 report.
+ 
+        \begindata
+ 
+        BODY618_RADII     = (   10       10     10   )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY701_RADII     = (  581.1   577.9   577.7 )
+        BODY702_RADII     = (  584.7   584.7   584.7 )
+        BODY703_RADII     = (  788.9   788.9   788.9 )
+        BODY704_RADII     = (  761.4   761.4   761.4 )
+        BODY705_RADII     = (  240.4   234.2   232.9 )
+ 
+        \begintext
+ 
+        The 2000 report gives only mean radii for satellites 706--715.
+ 
+        \begindata
+ 
+        BODY706_RADII     = (   13      13      13 )
+        BODY707_RADII     = (   15      15      15 )
+        BODY708_RADII     = (   21      21      21 )
+        BODY709_RADII     = (   31      31      31 )
+        BODY710_RADII     = (   27      27      27 )
+        BODY711_RADII     = (   42      42      42 )
+        BODY712_RADII     = (   54      54      54 )
+        BODY713_RADII     = (   27      27      27 )
+        BODY714_RADII     = (   33      33      33 )
+        BODY715_RADII     = (   77      77      77 )
+ 
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Neptune
+ 
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        The 2000 report gives mean radii only for bodies 801-806.
+ 
+        \begindata
+ 
+        BODY801_RADII     = ( 1352.6  1352.6  1352.6 )
+        BODY802_RADII     = (  170     170     170   )
+        BODY803_RADII     = (   29      29     29    )
+        BODY804_RADII     = (   40      40     40    )
+        BODY805_RADII     = (   74      74     74    )
+        BODY806_RADII     = (   79      79     79    )
+ 
+        \begintext
+ 
+ 
+        The second equatorial radius for Larissa is not given in the 2000
+        report.  The available values are:
+ 
+            BODY807_RADII     = (   104     ---     89   )
+ 
+        For use within the SPICE system, we use only the mean radius.
+        \begindata
+ 
+        BODY807_RADII     = (   96      96     96   )
+        BODY808_RADII     = (  218     208    201   )
+ 
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Pluto
+ 
+     
+     Old values:
+ 
+        Values are from the 2003 IAU report. 
+
+        BODY901_RADII     = (  593     593    593   )
+             
+     Current values:
+ 
+        \begindata
+ 
+        BODY901_RADII     = (  605     605    605   )
+ 
+        \begintext
+ 
+
+
+Radii for Selected Comets and Asteroids
+--------------------------------------------------------
+
+
+19P/Borrelly
+
+
+     Current values:
+ 
+
+        The value in the data assignment below is the 
+        "effective radius."
+
+        The first principal axis length is 
+
+           3.5 km
+
+        The lengths of the other semi-axes are not provided
+        by [1].
+
+        \begindata
+ 
+        BODY1000005_RADII     = (  4.22   4.22   4.22  )
+ 
+        \begintext
+
+
+
+Halley
+
+
+     Current values:
+
+        \begindata
+ 
+        BODY1000036_RADII     = (  8.0   4.0   4.0  )
+ 
+        \begintext
+
+
+
+9P/Tempel 1
+
+
+     Current values:
+
+
+        The value in the data assignment below is the 
+        "effective radius."
+            
+        According to [1]:
+
+           The maximum and minimum radii are not properly 
+           the values of the principal semi-axes, they
+           are half the maximum and minimum values of the
+           diameter. Due to the large deviations from a
+           simple ellipsoid, they may not correspond with
+           measurements along the principal axes, or be
+           orthogonal to each other.
+
+        \begindata
+ 
+        BODY1000093_RADII     = (  3.0   3.0   3.0  )
+ 
+        \begintext
+
+
+81P/Wild 2
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY1000107_RADII     = (  2.7   1.9   1.5 )
+ 
+        \begintext
+
+
+Ceres
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000001_RADII     = ( 487.3  487.3  454.7 )
+ 
+        \begintext
+
+
+Vesta
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000004_RADII     = ( 289.  280.  229.  )
+ 
+        \begintext
+
+
+Toutatis
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2004179_RADII     = (  2.13  1.015  0.85  )
+ 
+        \begintext
+
+ 
+Kleopatra
+
+
+     Old values:
+
+        Values are from the 2003 report.
+
+ 
+        body2000216_radii     = (   108.5      47    40.5  )
+ 
+
+     Current values:
+ 
+ 
+        No values are provided in the 2006 report.
+
+
+Mathilde
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000253_RADII     = (  33.   24.   23.  )
+ 
+        \begintext
+       
+Eros
+ 
+
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY2000433_RADII     = (  17.0   5.5   5.5  )
+ 
+        \begintext
+
+
+Itokawa
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2025143_RADII     = (  0.535   0.294   0.209  )
+ 
+        \begintext
+
+
+
+Gaspra
+
+     
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY9511010_RADII     = (    9.1    5.2    4.4 )
+ 
+        \begintext
+
+        
+        
+        
+Ida
+
+     
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY2431010_RADII     = (   26.8   12.0    7.6 )
+ 
+        \begintext
+
+        
+
+===========================================================================
+End of file pck00009.tpc
+===========================================================================
+
+
+
diff --git a/tests/pytests/data/f004b65/vikingAddendum003.ti b/tests/pytests/data/f004b65/vikingAddendum003.ti
new file mode 100644
index 0000000..b84e8a8
--- /dev/null
+++ b/tests/pytests/data/f004b65/vikingAddendum003.ti
@@ -0,0 +1,23 @@
+\begindata
+INS-30001_TRANSX = ( 0.0, 0.0117647058823529, 0.0)
+INS-30001_TRANSY = ( 0.0, 0.0, 0.0117647058823529)
+INS-30001_ITRANSS = ( 0.0, 85.0, 0.0)
+INS-30001_ITRANSL = ( 0.0, 0.0, 85.0)
+
+INS-30002_TRANSX = ( 0.0, 0.0117647058823529, 0.0)
+INS-30002_TRANSY = ( 0.0, 0.0, 0.0117647058823529)
+INS-30002_ITRANSS = ( 0.0, 85.0, 0.0)
+INS-30002_ITRANSL = ( 0.0, 0.0, 85.0)
+
+\begintext
+These are the parameters for writing c-kernels.  Isis will create ck
+with the same frame endpoints as the mission ck. For Viking1 the ck
+instrument frame is VO2_PLATFORM (-30000) and the ck reference frame
+is B1950 (2) or J2000 (1), depending on the ck used.  The mdim2.0_rand
+ck is in J2000.
+
+\begindata
+INS-30001_CK_FRAME_ID=-30000
+INS-30001_CK_REFERENCE_ID=2
+INS-30002_CK_FRAME_ID=-30000
+INS-30002_CK_REFERENCE_ID=2
diff --git a/tests/pytests/data/f004b65/vo2_fict.tsc b/tests/pytests/data/f004b65/vo2_fict.tsc
new file mode 100644
index 0000000..f6c2ed1
--- /dev/null
+++ b/tests/pytests/data/f004b65/vo2_fict.tsc
@@ -0,0 +1,134 @@
+KPL/SCLK
+
+\beginlabel
+PDS_VERSION_ID               = PDS3
+RECORD_TYPE                  = STREAM
+RECORD_BYTES                 = "N/A"
+^SPICE_KERNEL                = "VO2_FICT.TSC"
+MISSION_NAME                 = VIKING
+SPACECRAFT_NAME              = "VIKING ORBITER 2"
+DATA_SET_ID                  = "VO1/VO2-M-SPICE-6-V1.0"
+KERNEL_TYPE_ID               = SCLK
+PRODUCT_ID                   = "VO2_FICT.TSC"
+PRODUCT_CREATION_TIME        = 2000-04-21T10:53:21
+PRODUCER_ID                  = "NAIF/JPL"
+MISSION_PHASE_NAME           = {
+                               PRIMARY_MISSION,
+                               EXTENDED_MISSION,
+                               CONTINUATION_MISSION
+                               }
+PRODUCT_VERSION_TYPE         = ACTUAL
+PLATFORM_OR_MOUNTING_NAME    = "N/A"
+START_TIME                   = "N/A"
+STOP_TIME                    = "N/A"
+SPACECRAFT_CLOCK_START_COUNT = "N/A"
+SPACECRAFT_CLOCK_STOP_COUNT  = "N/A"
+TARGET_NAME                  = MARS
+INSTRUMENT_NAME              = "N/A"
+NAIF_INSTRUMENT_ID           = "N/A"
+SOURCE_PRODUCT_ID            = "N/A"
+NOTE                         = "See comments in the file for details"
+OBJECT                       = SPICE_KERNEL
+  INTERCHANGE_FORMAT         = ASCII
+  KERNEL_TYPE                = CLOCK_COEFFICIENTS
+  DESCRIPTION                = "SCLK file implementing fictitious clock
+used to tag orientation data in the VO2 CK files. This SCLK file does NOT
+represent real Viking Orbiter 2 on-board clock but rather is a simple
+counter of milliseconds since 1 Jan 1976 00:00:00. "
+END_OBJECT                   = SPICE_KERNEL
+\endlabel
+
+
+Viking Orbiter 2 "fictitious" SCLK Kernel
+--------------------------------------------------------
+ 
+   This file contains the data necessary to convert between the
+   'fictitious' Viking Orbiter 2 on-board clock times used as tags
+   for pointing instances in Viking Orbiter 2 CK files and ephemeris
+   time.
+
+   NAIF suggests that you do not modify this file. If you do modify
+   it, be sure to indicate this in the `Version' section below.
+
+ 
+Version
+--------------------------------------------------------
+ 
+   Version 1.0.1 -- April 20, 2000
+   
+      Comments in the file were slightly reformatted and augmented.
+ 
+   Version 1.0.0 -- July 22, 1996
+ 
+ 
+Implementation notes
+--------------------------------------------------------
+ 
+   This SPICE SCLK file is constructed so that valid SCLK strings
+   are simply the number of seconds that have passed since the UTC
+   epoch 1 Jan 1976 00:00:00. Thus 288929292.827 simply represents
+   the epoch that occurs 288929292.827 seconds past the UTC epoch
+   1 Jan 1976.
+
+   For all time, the clock runs at the same rate as Terrestrial
+   Dynamical Time (TDT). There is only one partition for this clock.
+
+   You must load this file into the kernel pool before using any
+   of the SPICELIB SCLK routines. The code fragment
+
+      CALL LDPOOL ( < name of this file > )
+ 
+   performs this task. To convert between ET and UTC, you will also
+   need to load a leapseconds kernel. The additional call to LDPOOL,
+
+      CALL LDPOOL ( < name of your leapsecond file > )
+
+   will accomplish this. Note that you must supply the actual names
+   of the files used on your system as arguments to LDPOOL. Because
+   the file names are system dependent, we do not list them here.
+
+   For more information, consult your SPICELIB required reading
+   files. The following areas are covered:
+
+      SCLK system                     SCLK required reading
+      Time systems and conversion     TIME required reading
+      Kernel pool                     KERNEL required reading
+ 
+ 
+Kernel data
+--------------------------------------------------------
+ 
+   \begindata
+   
+      SCLK_KERNEL_ID                = (  @22-JUL-1996     )
+         
+      SCLK_DATA_TYPE_30             = (                 1 )
+         
+      SCLK01_TIME_SYSTEM_30         = (                 2 )
+      SCLK01_N_FIELDS_30            = (                 2 )
+      SCLK01_MODULI_30              = ( 10000000000  1000 )
+      SCLK01_OFFSETS_30             = (           0     0 )
+      SCLK01_OUTPUT_DELIM_30        = (                 1 )
+         
+      SCLK_PARTITION_START_30       = ( 0.0000000000000E+00 )
+      SCLK_PARTITION_END_30         = ( 1.00000000E+14      )
+      SCLK01_COEFFICIENTS_30        = ( 0.00000000E+00     
+                                        @01-JAN-1976-00:00:47.184 
+                                        1  )
+      
+   \begintext
+
+
+Contact Information
+--------------------------------------------------------
+
+   Contact NAIF node of the Planetary Data System if you have any
+   questions regarding this SCLK file.
+
+      Charles H. Acton, Jr
+      (818)-354-3869 
+      chuck.acton@jpl.nasa.gov
+      
+      Boris V. Semenov
+      (818)-354-8136 
+      boris.semenov@jpl.nasa.gov
diff --git a/tests/pytests/data/f004b65/vo2_fsc.tsc b/tests/pytests/data/f004b65/vo2_fsc.tsc
new file mode 100644
index 0000000..d3b30a1
--- /dev/null
+++ b/tests/pytests/data/f004b65/vo2_fsc.tsc
@@ -0,0 +1,193 @@
+KPL/SCLK
+
+\beginlabel
+PDS_VERSION_ID               = PDS3
+RECORD_TYPE                  = STREAM
+RECORD_BYTES                 = "N/A"
+^SPICE_KERNEL                = "VO2_FSC.TSC"
+MISSION_NAME                 = VIKING
+SPACECRAFT_NAME              = "VIKING ORBITER 2"
+DATA_SET_ID                  = "VO1/VO2-M-SPICE-6-V1.0"
+KERNEL_TYPE_ID               = SCLK
+PRODUCT_ID                   = "VO2_FSC.TSC"
+PRODUCT_CREATION_TIME        = 2000-04-21T10:53:21
+PRODUCER_ID                  = "NAIF/JPL"
+MISSION_PHASE_NAME           = {
+                               PRIMARY_MISSION,
+                               EXTENDED_MISSION,
+                               CONTINUATION_MISSION
+                               }
+PRODUCT_VERSION_TYPE         = ACTUAL
+PLATFORM_OR_MOUNTING_NAME    = "N/A"
+START_TIME                   = "N/A"
+STOP_TIME                    = "N/A"
+SPACECRAFT_CLOCK_START_COUNT = "N/A"
+SPACECRAFT_CLOCK_STOP_COUNT  = "N/A"
+TARGET_NAME                  = MARS
+INSTRUMENT_NAME              = "N/A"
+NAIF_INSTRUMENT_ID           = "N/A"
+SOURCE_PRODUCT_ID            = "N/A"
+NOTE                         = "See comments in the file for details"
+OBJECT                       = SPICE_KERNEL
+  INTERCHANGE_FORMAT         = ASCII
+  KERNEL_TYPE                = CLOCK_COEFFICIENTS
+  DESCRIPTION                = "SCLK file containing linear piecewise
+function representing VO2 FSC on-board clock. This function was generated as
+the result of VO2 image time tags restoration. "
+END_OBJECT                   = SPICE_KERNEL
+\endlabel
+
+
+Viking Orbiter 2 Reconstructed Frame Start Count (FSC) SCLK file
+--------------------------------------------------------
+
+   This file contain data necessary to convert a Viking Orbiter 2
+   FSC count to the ET time corresponding to it. These data are
+   based on the results of VO2 image times reconstruction done at
+   NAIF/JPL. The process of this reconstruction is described in
+   detail in the "VO Image Time Reconstruction" document.
+
+   Note that the main purpose of this file is to store the
+   reconstructed FSC counter; the on-board clock defined by the
+   function in this file was not used to time tag any of the
+   orientation data in CK files.
+
+   To avoid confusion with the other VO2 clock used for time tagging,
+   the FSC on-board clock in this file was assigned the NAIF ID
+   code -30999.
+   
+
+Version
+--------------------------------------------------------
+ 
+   Version 1.0.1 -- April 20, 2000
+   
+      Comments in the file were slightly reformatted and augmented.
+ 
+   Version 1.0.0 -- July 22, 1996 
+     
+
+Implementation notes
+--------------------------------------------------------
+ 
+   This SPICE SCLK file is constructed so that valid SCLK strings
+   are the eight digit VO2 FSC count associated with each VO2 image.
+   Note that the actual "image time" (the time of the beginning,
+   middle or the end of exposure) has a significant offset from
+   the FSC tick start time. This offset depends on the exposure
+   duration and is described in the "VO Image Time Reconstruction"
+   document.
+
+   You must load this file into the kernel pool before using any
+   of the SPICELIB SCLK routines. The code fragment
+
+      CALL LDPOOL ( < name of this file > )
+ 
+   performs this task. To convert between ET and UTC, you will also
+   need to load a leapseconds kernel. The additional call to LDPOOL,
+
+      CALL LDPOOL ( < name of your leapsecond file > )
+ 
+   will accomplish this. Note that you must supply the actual names
+   of the files used on your system as arguments to LDPOOL. Because
+   the file names are system dependent, we do not list them here.
+
+   For more information, consult your SPICELIB required reading
+   files. The following areas are covered:
+
+      SCLK system                     SCLK required reading
+      Time systems and conversion     TIME required reading
+      Kernel pool                     KERNEL required reading
+
+
+Kernel data
+--------------------------------------------------------
+
+\begindata
+
+ SCLK_KERNEL_ID           = ( @22-JUL-1996 )
+
+ SCLK_DATA_TYPE_30999        = ( 1 )
+ SCLK01_TIME_SYSTEM_30999    = ( 2 )
+ SCLK01_N_FIELDS_30999       = ( 1 )
+ SCLK01_MODULI_30999         = ( 80000000 )
+ SCLK01_OFFSETS_30999        = ( 46442015 )
+ SCLK01_OUTPUT_DELIM_30999   = ( 1 )
+
+ SCLK_PARTITION_START_30999  = ( 
+                                        0 
+                                   357985 
+                                   777985 
+                                  1057985
+                                  1268246
+                                  1457985
+                                  2581493
+                                  4701667
+                                  5412787
+                                  6557985
+                                  6810335
+                                  7107985
+                                  9390838
+                                 10007985
+                                 10607985
+                                 11107985
+                                 12557985
+                                            )
+
+ SCLK_PARTITION_END_30999    = ( 
+                                   357985 
+                                   777985 
+                                  1057985
+                                  1268246
+                                  1457985
+                                  2581493
+                                  4701667
+                                  5412787
+                                  6557985
+                                  6810335
+                                  7107985
+                                  9390838
+                                 10007985
+                                 10607985
+                                 11107985
+                                 12557985
+                                 13843304
+                                            )
+
+ SCLK01_COEFFICIENTS_30999   = ( 
+
+        0       -738643373.631604  4.480001294
+        357985  -737039600.324536  4.480001238
+        777985  -735157999.769837  4.480001240
+        1057985 -733903599.385587  4.480001244
+        1268246 -732961629.770622  4.480001297
+        1457985 -732111598.747130  4.480001301
+        2581493 -727078280.882439  4.480001764
+        4701667 -717579897.536827  4.480001764
+        5412787 -714394078.461940  4.480001817
+        6557985 -709263589.346238  4.480001599
+        6810335 -708133060.592218  4.480001867
+        7107985 -706799588.012369  4.480001868
+        9390838 -696572402.934857  4.480001454
+       10007985 -693807583.640654  4.480001937
+       10607985 -691119582.502621  4.480001298
+       11107985 -688879581.719291  4.480001364
+       12557985 -682383579.531742  4.480001393
+                                                 )
+
+\begintext
+
+
+Contact Information
+--------------------------------------------------------
+
+   Contact NAIF node of the Planetary Data System if you have any
+   questions regarding this SCLK file.
+
+      Charles H. Acton, Jr
+      (818)-354-3869 
+      chuck.acton@jpl.nasa.gov
+      
+      Boris V. Semenov
+      (818)-354-8136 
+      boris.semenov@jpl.nasa.gov
diff --git a/tests/pytests/data/f004b65/vo2_sedr_ck2_0_sliced_-30000.xc b/tests/pytests/data/f004b65/vo2_sedr_ck2_0_sliced_-30000.xc
new file mode 100644
index 0000000..6f2a58b
--- /dev/null
+++ b/tests/pytests/data/f004b65/vo2_sedr_ck2_0_sliced_-30000.xc
@@ -0,0 +1,981 @@
+DAFETF NAIF DAF ENCODED TRANSFER FILE
+'DAF/CK  '
+'2'
+'6'
+'VO2 PLATFORM ATTITUDE; CREATED BY BVS/NAIF; 2006-FEB-09     '
+BEGIN_ARRAY 1 960
+'VO2 ATT. BASED ON GEM AND SEDR FILES    '
+'481C5943E^9'
+'481F08AF9^9'
+'-7530'
+'2'
+'2'
+'1'
+960
+'2F5044DC744704^0'
+'-45AEE5FC6BF8A^0'
+'7EE9F2A166BF54^0'
+'CDC0ED4CE8C6E^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2E66F7CEBF327E^0'
+'-44369B138153D^0'
+'7F3FF2755EDE1C^0'
+'CE3EE31CFDF7F^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2E31EB7BB55964^0'
+'-43C23CD0A73AD4^0'
+'7FBD44327B68E8^0'
+'CE23ADE56DC088^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2D9F5E0B6177C8^0'
+'-42D4F1213B80D4^0'
+'7FFB9336C2DF7^0'
+'CE6B167B5811A8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2D5F01B7201DDE^0'
+'-424DF1FC862AD4^0'
+'8088D1293D2C^0'
+'CE4D0A0B7D5E8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2CD705B0AC0BE4^0'
+'-41721644FDF604^0'
+'80C24D6D5D4A58^0'
+'CE8D16C274292^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2C99EC8651AA58^0'
+'-40E8E9E20D978C^0'
+'8174A4303ECF8^0'
+'CE5619EC41375^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2C038D20A2FAA4^0'
+'-3FFAC4D988AB2A^0'
+'81A7FAC0552F48^0'
+'CEA07BE0F0167^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2BCC2DA443A436^0'
+'-3F85E5C8E6C83E^0'
+'823A23DB1691D^0'
+'CE745FCB19DDE8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2B334815E19A7E^0'
+'-3E938B4B46EE14^0'
+'826D443D4586A8^0'
+'CEBE469BD9F7D8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2AF9C2D85F32AE^0'
+'-3E1F8C73B4301A^0'
+'82F5082CA9AD8^0'
+'CE9768717CA7B8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2A63B948778248^0'
+'-3D3146D13F738E^0'
+'832FE7CA64DE58^0'
+'CED8209A562D78^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2A298983B08954^0'
+'-3CBE33F5072C46^0'
+'83B7D65A9DFB1^0'
+'CEAF8923E1A5E8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2991F5C05285D^0'
+'-3BD086EF98DC6A^0'
+'83E7D225D5ED68^0'
+'CEF4E8D46006D^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2957133853EBC8^0'
+'-3B5D7467B95FEA^0'
+'8478B4FB0E0CF^0'
+'CEC54624299DD8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'28BDD4E8A5813E^0'
+'-3A70B6721E093^0'
+'849E413AC23158^0'
+'CF0F02BC85FA4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2880746B39075^0'
+'-39FEE4A4AB7B06^0'
+'851210845816^0'
+'CEF0BE954E12A^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'27E671A8A8631E^0'
+'-391178E8BACD38^0'
+'853BD10B3666A^0'
+'CF35C26C876818^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'27A7AB05BD511E^0'
+'-389F6E41396952^0'
+'85B451784AF038^0'
+'CF137798578198^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'270CC1150CA382^0'
+'-37B177B65A18A4^0'
+'85D7E8C0B6338^0'
+'CF5A66C6190EF^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'26CDD62CC1150C^0'
+'-373EDC55E0FE24^0'
+'866274CE2FAF2^0'
+'CF2B3D6F94C65^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'26322E8710BB9C^0'
+'-364FE52538ACA8^0'
+'868F5527AD5428^0'
+'CF6A2FCCE6B5B^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'25F2012B0130B6^0'
+'-35DE2265DF3592^0'
+'871553ECE29E98^0'
+'CF3C83E538C688^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'255339F0AF0404^0'
+'-34EB4C72F20DA6^0'
+'874155E15B00C8^0'
+'CF7B2CBCBF72D^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3962EDB67DF4AC^0'
+'-4FF88733319738^0'
+'896BC6318BDD28^0'
+'C041E9D0C81448^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'38B93A82EDFC6^0'
+'-4F0FD0FE341174^0'
+'89A835A2CFFF6^0'
+'C0A92DC93E312^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3890046130445^0'
+'-4E9236701AF45C^0'
+'8A6DCE582F8758^0'
+'C05B09A1354F9^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'37FA4A070A92FC^0'
+'-4DC6FF74AE766^0'
+'8AA09AF049DAB^0'
+'C0B4C275E1CB38^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'37B73BD2121504^0'
+'-4D418D8522AD5^0'
+'8B2BDE0762FF68^0'
+'C0997C6269BB4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'37226536BB5AC^0'
+'-4C75CC340F45A4^0'
+'8B621D772D49F^0'
+'C0EE534F7DC55^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'36E0E7D0279322^0'
+'-4BEF4065D1A28C^0'
+'8BF9FCA3B302B8^0'
+'C0C82ADF01753^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'363F47963733FC^0'
+'-4B11BC77B44FF8^0'
+'8C38C9A7647CC^0'
+'C11EF3CC059F4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'360734C2A0ABC^0'
+'-4A9D96574CE7D4^0'
+'8CC26D60D762E8^0'
+'C0F789F98D3DB8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3564533A305A3A^0'
+'-49BF457E82866C^0'
+'8D006FFDFBB27^0'
+'C14CFE1D321A6^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'352ABE519E85D^0'
+'-494BDBE1091B24^0'
+'8D892EE36FEEA8^0'
+'C124CEBD8110D8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3488101F706566^0'
+'-486B77196567E8^0'
+'8DCF94C2D74908^0'
+'C17244DCE84DA8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'345C8DE8F310EE^0'
+'-4806D87FE420EC^0'
+'8E64DB5658C328^0'
+'C135F0696A6D08^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'33B7A872ECBB7E^0'
+'-472782CFF63EB4^0'
+'8EA17B71A03AA^0'
+'C188519F3BE7^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3373F515B034E8^0'
+'-46A753D61594E8^0'
+'8F350775E4BAE^0'
+'C15C58DACB3BB^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'32E0A337E06D9C^0'
+'-45E1CEB65099FC^0'
+'8F69B50BBAE138^0'
+'C1A403AA768B9^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3299BA70DE97D^0'
+'-455BC44B4A317^0'
+'9006F55F57AB18^0'
+'C1720CABA8CE3^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'31F2E8B66868DA^0'
+'-447CFA803191F4^0'
+'9040BEF5A67B88^0'
+'C1C1A8DF9FBA58^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'31C2FF799A42C6^0'
+'-441B20079FC968^0'
+'90CB36E6F09FD8^0'
+'C18929EBD7A8A^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'311BA8A6DEE86^0'
+'-433CC235CF9BF4^0'
+'91041C5D812AB^0'
+'C1D6FFBDA49D38^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'30CFCEA7D0FF2^0'
+'-42B9DAE398838^0'
+'918DE7681D68B8^0'
+'C1B019428EE998^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3035D3C5799C^0'
+'-41EBECEDD2B3E^0'
+'91CABE2BBCE838^0'
+'C1EF61F3357E9^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2FE8B6D22CDDCA^0'
+'-41699E0403D0D4^0'
+'92535048A420E8^0'
+'C1C7BE5289EA18^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2F3F96B300ECB8^0'
+'-408A9016EC6064^0'
+'928A590D78EA4^0'
+'C2126AFDF61968^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'47EE463356F27^0'
+'-53A08BFE0F5FCC^0'
+'A3C399FA844B58^0'
+'A2F0EB1CA4CE38^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'471EC818A940B4^0'
+'-52F1A0D8E8D0C^0'
+'A3DA25B3FA761^0'
+'A38E71E5045FB^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'46D6E5BB199638^0'
+'-5286ED347150C^0'
+'A445C2A8961358^0'
+'A377AA0C8A30A^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4602C0506F79D^0'
+'-51DDC9768FAFA^0'
+'A442CE105B80A^0'
+'A42AB2696C38D8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'45C84F7A7A0A18^0'
+'-5181FF4AA33F3^0'
+'A4A7DFFE3D9C3^0'
+'A40BFDD401FA1^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44F97235128F04^0'
+'-50D92FBAB9E5E8^0'
+'A4A9EA36417888^0'
+'A4B4A0ADEE1AB^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'44A1CAC0CDD98C^0'
+'-5060A18C3434B8^0'
+'A51AE0454B0AF^0'
+'A4A3291E34A9E8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'43E0218E197A1^0'
+'-4FC755D491BAB8^0'
+'A50D977A69B468^0'
+'A54AFE7F990D68^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'43976F2C77FE84^0'
+'-4F5D096903B958^0'
+'A57B8E7BF6D028^0'
+'A52DFF4124DA78^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'42C8AD26B60334^0'
+'-4EB30DEC3141A8^0'
+'A5769C2699C5D8^0'
+'A5D80A2F995CB^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'426FAAA4488A58^0'
+'-4E3AB75D3534EC^0'
+'A5E648B79AAED8^0'
+'A5C527DA85599^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'41AFF48A1D30BC^0'
+'-4D9DAFC34D74DC^0'
+'A5DE85179BF308^0'
+'A662D89349155^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'41663BE02F3BE8^0'
+'-4D328F1BF9B9F^0'
+'A64F60DDE8651^0'
+'A6410DD234375^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'408A7F3D815B54^0'
+'-4C74391FC791EC^0'
+'A65A5F389635C8^0'
+'A6E391CC28921^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'40415899E9FC5C^0'
+'-4C06E535FEBE3^0'
+'A6D30E44596478^0'
+'A6B940E851638^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3F73ADF2B85DE4^0'
+'-4B567D06A3645C^0'
+'A6D6D52B40931^0'
+'A7540A33312E38^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3F27C0AB51AAB6^0'
+'-4AEB318A55A4^0'
+'A746F823A0245^0'
+'A730F7F28373A8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3E65AE722E374C^0'
+'-4A452E5DCD5A84^0'
+'A744F2CC53C0D^0'
+'A7C5AB6975DF1^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3E1B04DFFF29DC^0'
+'-49D88AD9BDE318^0'
+'A7BCFEBA40B6E^0'
+'A799736AD8C4D^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3D5C50E4ED35C2^0'
+'-49350EB784CD58^0'
+'A7B8614087F328^0'
+'A82BC8D69C9A68^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3D01E31F94B67E^0'
+'-48BA5650FAEC34^0'
+'A83512D49BB7E8^0'
+'A8055FCBDB4FE8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3C52AB9819690C^0'
+'-48255B595A849C^0'
+'A82999ACF4BF4^0'
+'A89020543BD99^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3BF66558C65628^0'
+'-47AC71D6928BB8^0'
+'A89DEB97CFAC78^0'
+'A8706B4C0F9CF8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3B2745372AF48E^0'
+'-46FC1931E5205^0'
+'A88BB46BCF2CA8^0'
+'A9163EE90FE5D8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'5B184316009138^0'
+'-4FC1D0C1199E5C^0'
+'BEFB7BB31267D8^0'
+'780270CB3D6B1^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'59AF976EB687D4^0'
+'-4F51C12DC4BE44^0'
+'BEEFF449E04758^0'
+'796C9369F30688^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'595A480F06AA28^0'
+'-4EEC5F5F63A1E8^0'
+'BF6337F0A81968^0'
+'793805D23A4944^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'58340E884B2B38^0'
+'-4EFC30FBB2A5D8^0'
+'BEA48505855C9^0'
+'7B2DA64ED4C58^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'5805E0518603C4^0'
+'-4E49DD17D19334^0'
+'BFAA43444B381^0'
+'7A29448D59D51^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'570647580CC3B8^0'
+'-4E0CC4CFFDEEE^0'
+'BF77236EBAF478^0'
+'7B56358705400C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'569CC587AABEE8^0'
+'-4DA0374C8EC7E4^0'
+'BFEA76598527D^0'
+'7B31BA0389CC84^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'55B1BB67243A18^0'
+'-4D627EBFAC12F^0'
+'BFBE281808174^0'
+'7C40C094A0EEE8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'554A4DBBCB6AD^0'
+'-4CEF4D75FB6F8C^0'
+'C03D4A2CD4D99^0'
+'7C0AF66BFFF22^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'545533099B916^0'
+'-4CBC96CD977B4C^0'
+'BFF15773AB0C8^0'
+'7D4602948DC84^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'53EF2C01529074^0'
+'-4C46DF5F7EEFFC^0'
+'C07584C5117048^0'
+'7D0791DBF357C8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'5301BD5609E258^0'
+'-4C0DA4BC9797E4^0'
+'C032AB47006348^0'
+'7E2E6AFC877794^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'529ABBC68FCC94^0'
+'-4B98C68ABCA64^0'
+'C0B63D11B9157^0'
+'7DEF825082FEF8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'519AB9C69927D^0'
+'-4B5730F6D947AC^0'
+'C06C78520E43E8^0'
+'7F2CF41BE7202^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'51472EDC6F4E0C^0'
+'-4AE82F597E65E^0'
+'C0F45AF5F02878^0'
+'7ED606139ACE08^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'50480385879784^0'
+'-4AA44E1ACAE4CC^0'
+'C0A86E0EC3F34^0'
+'80126DB4839EF8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4FF0F780F6C2E4^0'
+'-4A3BC0DE2BC648^0'
+'C1232CB377757^0'
+'7FCCB276A661EC^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4EF4C40EACCB34^0'
+'-49EF1A05E911B^0'
+'C0E2028D7FD2C8^0'
+'80F6F8B80F02C^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4E7890CED2CC5^0'
+'-49753E7221F098^0'
+'C15D6BCE7A1DB8^0'
+'80CF94B401CD98^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4D7BCF1E2FB3B4^0'
+'-492524040FC534^0'
+'C11A72AACEC958^0'
+'81F94C9914C6C8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4D2389DD1236EC^0'
+'-48BD0F8F90537C^0'
+'C193FCB92D9E68^0'
+'81B358CEEF3E1^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4C386ADFB9B534^0'
+'-487543034EF37C^0'
+'C14880BB60F9A8^0'
+'82D5D80F5C8D88^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4BCA759FB06084^0'
+'-47FF60DE3AA094^0'
+'C1CA10092C7A7^0'
+'82971744890AB8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'4AE09660EA8454^0'
+'-47B53E11184CBC^0'
+'C17BDEBF3A56E8^0'
+'83B97A3EA3839^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'481DB505CFFFFC^9'
+'481DB61D3FFFCC^9'
+'481DB736500034^9'
+'481DB84E4FFFCC^9'
+'481DB96760003^9'
+'481DBA7F5FFFC8^9'
+'481DBB95BFFFC4^9'
+'481DBCAD4FFFF8^9'
+'481DBDC650003^9'
+'481DBEDE4FFFC8^9'
+'481DBFF76FFFE^9'
+'481DC10F6FFFF4^9'
+'481DC225CFFFF^9'
+'481DC33D4FFFF4^9'
+'481DC456500028^9'
+'481DC56E5FFFF^9'
+'481DC687600028^9'
+'481DC79F6FFFF^9'
+'481DC8B5C00038^9'
+'481DC9CD4FFFF^9'
+'481DCAE65FFFD8^9'
+'481DCBFE5FFFEC^9'
+'481DCD17600024^9'
+'481DCE2F6FFFEC^9'
+'481DDC6470000C^9'
+'481DDD7C50003C^9'
+'481DDE94900018^9'
+'481DDFAC6FFFCC^9'
+'481DE0C4BFFFD8^9'
+'481DE1DCB00038^9'
+'481DE2F4800038^9'
+'481DE40C5FFFE8^9'
+'481DE5249FFFC8^9'
+'481DE63C6FFFC8^9'
+'481DE754BFFFD4^9'
+'481DE86CBFFFE8^9'
+'481DE984800034^9'
+'481DEA9C50003^9'
+'481DEBB49FFFC4^9'
+'481DECCC7FFFF^9'
+'481DEDE4B0001C^9'
+'481DEEFCB0003^9'
+'481DF0146FFFFC^9'
+'481DF12C50002C^9'
+'481DF244900008^9'
+'481DF35C7FFFEC^9'
+'481DF474BFFFCC^9'
+'481DF58CB0002C^9'
+'481E03C4BFFFE8^9'
+'481E04DC800034^9'
+'481E05F4FFFFDC^9'
+'481E070CAFFFF4^9'
+'481E08253FFFCC^9'
+'481E093D3FFFE^9'
+'481E0A54B0003^9'
+'481E0B6C8FFFE^9'
+'481E0C85200038^9'
+'481E0D9CC0002^9'
+'481E0EB54FFFF8^9'
+'481E0FCD50000C^9'
+'481E10E4D0001^9'
+'481E11FC800028^9'
+'481E1315200034^9'
+'481E142CC0001C^9'
+'481E15454FFFF4^9'
+'481E165D500008^9'
+'481E1774D0000C^9'
+'481E188C800024^9'
+'481E19A520003^9'
+'481E1ABCCFFFC8^9'
+'481E1BD560002^9'
+'481E1CED500004^9'
+'481E2B2550000C^9'
+'481E2C3CD0001^9'
+'481E2D55CFFFC8^9'
+'481E2E6D5FFFFC^9'
+'481E2F86600034^9'
+'481E309E5FFFC8^9'
+'481E31B5500008^9'
+'481E32CCD0000C^9'
+'481E33E5CFFFC4^9'
+'481E34FD4FFFC8^9'
+'481E36166FFFE^9'
+'481E372E5FFFC4^9'
+'481E3845500004^9'
+'481E395CD00008^9'
+'481E3A75D0003C^9'
+'481E3B8D5FFFF4^9'
+'481E3CA6600028^9'
+'481E3DBE6FFFF^9'
+'481E3ED560003^9'
+'481E3FECD^9'
+'481E4105D00038^9'
+'481E421D500038^9'
+'481E4336600024^9'
+'481E444E600038^9'
+'481DB582CFFFFC^9'
+'481DB69A3FFFCC^9'
+'481DB7B3500034^9'
+'481DB8CB4FFFCC^9'
+'481DB9E460003^9'
+'481DBAFC5FFFC8^9'
+'481DBC12BFFFC4^9'
+'481DBD2A4FFFF8^9'
+'481DBE4350003^9'
+'481DBF5B4FFFC8^9'
+'481DC0746FFFE^9'
+'481DC18C6FFFF4^9'
+'481DC2A2CFFFF^9'
+'481DC3BA4FFFF4^9'
+'481DC4D3500028^9'
+'481DC5EB5FFFF^9'
+'481DC704600028^9'
+'481DC81C6FFFF^9'
+'481DC932C00038^9'
+'481DCA4A4FFFF^9'
+'481DCB635FFFD8^9'
+'481DCC7B5FFFEC^9'
+'481DCD94600024^9'
+'481DCEAC6FFFEC^9'
+'481DDCE170000C^9'
+'481DDDF950003C^9'
+'481DDF11900018^9'
+'481DE0296FFFCC^9'
+'481DE141BFFFD8^9'
+'481DE259B00038^9'
+'481DE371800038^9'
+'481DE4895FFFE8^9'
+'481DE5A19FFFC8^9'
+'481DE6B96FFFC8^9'
+'481DE7D1BFFFD4^9'
+'481DE8E9BFFFE8^9'
+'481DEA01800034^9'
+'481DEB1950003^9'
+'481DEC319FFFC4^9'
+'481DED497FFFF^9'
+'481DEE61B0001C^9'
+'481DEF79B0003^9'
+'481DF0916FFFFC^9'
+'481DF1A950002C^9'
+'481DF2C1900008^9'
+'481DF3D97FFFEC^9'
+'481DF4F1BFFFCC^9'
+'481DF609B0002C^9'
+'481E0441BFFFE8^9'
+'481E0559800034^9'
+'481E0671FFFFDC^9'
+'481E0789AFFFF4^9'
+'481E08A23FFFCC^9'
+'481E09BA3FFFE^9'
+'481E0AD1B0003^9'
+'481E0BE98FFFE^9'
+'481E0D02200038^9'
+'481E0E19C0002^9'
+'481E0F324FFFF8^9'
+'481E104A50000C^9'
+'481E1161D0001^9'
+'481E1279800028^9'
+'481E1392200034^9'
+'481E14A9C0001C^9'
+'481E15C24FFFF4^9'
+'481E16DA500008^9'
+'481E17F1D0000C^9'
+'481E1909800024^9'
+'481E1A2220003^9'
+'481E1B39CFFFC8^9'
+'481E1C5260002^9'
+'481E1D6A500004^9'
+'481E2BA250000C^9'
+'481E2CB9D0001^9'
+'481E2DD2CFFFC8^9'
+'481E2EEA5FFFFC^9'
+'481E3003600034^9'
+'481E311B5FFFC8^9'
+'481E3232500008^9'
+'481E3349D0000C^9'
+'481E3462CFFFC4^9'
+'481E357A4FFFC8^9'
+'481E36936FFFE^9'
+'481E37AB5FFFC4^9'
+'481E38C2500004^9'
+'481E39D9D00008^9'
+'481E3AF2D0003C^9'
+'481E3C0A5FFFF4^9'
+'481E3D23600028^9'
+'481E3E3B6FFFF^9'
+'481E3F5260003^9'
+'481E4069D^9'
+'481E4182D00038^9'
+'481E429A500038^9'
+'481E43B3600024^9'
+'481E44CB600038^9'
+END_ARRAY 1 960
+TOTAL_ARRAYS 1
+ ~NAIF/SPC BEGIN COMMENTS~
+This CK is for testing with the image: /home/pgiroux/Desktop/f004b65.cub
+
+This CK was generated using the following command: {}
+ ~NAIF/SPC END COMMENTS~
diff --git a/tests/pytests/data/f004b65/vo2_v10.tf b/tests/pytests/data/f004b65/vo2_v10.tf
new file mode 100644
index 0000000..0cff34e
--- /dev/null
+++ b/tests/pytests/data/f004b65/vo2_v10.tf
@@ -0,0 +1,470 @@
+KPL/FK
+
+Viking Orbiter 2 Frames Kernel
+===============================================================================
+
+   This frame kernel contains the complete set of frame definitions for
+   the Viking Orbiter 2 (VO2) spacecraft including definitions for the
+   spacecraft frame, instrument platform frame, and science instrument
+   frames.
+
+
+Version and Date
+-------------------------------------------------------------------------------
+
+   Version 1.0 -- December 1, 2005 -- Boris Semenov, NAIF
+
+      Initial Release.
+
+
+References
+-------------------------------------------------------------------------------
+
+   1. ``Frames Required Reading''
+
+   2. ``Kernel Pool Required Reading''
+
+   3. ``C-Kernel Required Reading''      
+
+   4. VO2 Supplemental Experiment Data Record (SEDR) file, 1976-1980.
+ 
+   5. Thomas C. Duxbury/JPL, March-July, 1996
+
+
+Contact Information
+-------------------------------------------------------------------------------
+
+   Boris V. Semenov, NAIF/JPL, (818)-354-8136, Boris.Semenov@jpl.nasa.gov
+
+
+Implementation Notes
+-------------------------------------------------------------------------------
+
+   This file is used by the SPICE system as follows: programs that make
+   use of this frame kernel must `load' the kernel, normally during
+   program initialization. The SPICELIB/CSPICE/ICY routine FURNSH loads
+   a kernel file into the pool as shown below.
+
+      CALL FURNSH ( 'frame_kernel_name' )           SPICELIB/FORTRAN
+
+      furnsh_c ( "frame_kernel_name" );             CSPICE/C
+
+      cspice_furnsh, "frame_kernel_name"            ICY/IDL
+
+   This file was created and may be updated with a text editor or word
+   processor.
+
+
+VO2 Frames
+-------------------------------------------------------------------------------
+
+   The following VO2 frames are defined in this kernel file:
+
+           Name                  Relative to           Type       NAIF ID
+      ======================  ===================  ============   =======
+
+   Spacecraft frame:
+   -----------------
+      VO2_SPACECRAFT          rel.to B1950         CK             -30900
+
+   Instrument Platform frame:
+   --------------------------
+      VO2_PLATFORM            rel.to B1950         CK             -30000
+
+   Science Instrument frames:
+   --------------------------
+      VO2_VISA                rel.to PLATFORM      FIXED          -30001
+      VO2_VISA_TD             rel.to PLATFORM      FIXED          -30011
+      VO2_VISB                rel.to PLATFORM      FIXED          -30002
+      VO2_VISB_TD             rel.to PLATFORM      FIXED          -30012
+      VO2_IRTM                rel.to PLATFORM      FIXED          -30003
+      VO2_MAWD                rel.to PLATFORM      FIXED          -30004
+
+
+VO2 Frames Hierarchy
+-------------------------------------------------------------------------------
+
+   The diagram below shows VO2 frames hierarchy:
+
+
+                               "B1950" INERTIAL
+        +-----------------------------------------------------------+
+        |                   |                   |                   |
+        | <--pck            | <--ck             | <--ck             | <--pck
+        |                   |                   |                   | 
+        V                   V                   |                   V
+    "IAU_MARS"      "V01_SPACECRAFT"            |              "IAU_EARTH"
+    -----------     ----------------            |              ------------
+                                                |
+                                                |
+                                                V
+                                          "VO2_PLATFORM"                       
+        +---------------------------------------------------------+
+        |                 |                     |     |     |     |
+        | <--fixed        | <--fixed   fixed--> |     |     |     | <--fixed
+        |                 |                     |     |     |     |
+        V                 V                     V     |     |     V
+    "VO2_IRTM"        "VO2_MAWD"          "VO2_VISA"  |     | "VO2_VISB"
+    ----------        ----------          ----------  |     | ----------
+                                                      |     |
+                                                      |     |
+                                             fixed--> |     | <--fixed
+                                                      |     |
+                                                      V     V
+                                          "VO2_VISA_TD"     "VO2_VISB_TD"
+                                          -------------     -------------
+
+
+Spacecraft Bus Frame
+-------------------------------------------------------------------------------
+
+   The spacecraft frame is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the spacecraft bus frame:
+
+      [TBD]
+
+   Since the S/C bus attitude with respect to an inertial frame is
+   provided by a C kernel (see [3] for more information), this frame is
+   defined as a CK-based frame.
+
+   \begindata
+
+      FRAME_VO2_SPACECRAFT     = -30900
+      FRAME_-30900_NAME        = 'VO2_SPACECRAFT'
+      FRAME_-30900_CLASS       = 3
+      FRAME_-30900_CLASS_ID    = -30900
+      FRAME_-30900_CENTER      = -30
+      CK_-30900_SCLK           = -30
+      CK_-30900_SPK            = -30
+
+   \begintext
+
+
+Instrument Platform Frame
+-------------------------------------------------------------------------------
+
+   The instrument platform frame is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the instrument platform frame:
+
+      [TBD]
+
+   Since the platform attitude with respect to an inertial frame is
+   provided by a C kernel (see [3] for more information), this frame is
+   defined as a CK-based frame.
+
+   \begindata
+
+      FRAME_VO2_PLATFORM       = -30000
+      FRAME_-30000_NAME        = 'VO2_PLATFORM'
+      FRAME_-30000_CLASS       = 3
+      FRAME_-30000_CLASS_ID    = -30000
+      FRAME_-30000_CENTER      = -30
+      CK_-30000_SCLK           = -30
+      CK_-30000_SPK            = -30
+
+   \begintext
+
+
+VISA and VISB Frames
+-------------------------------------------------------------------------------
+
+   The frames for the Visual Imaging Subsystem Camera A (VISA) and
+   Camera B (VISB) -- VO2_VISA and VO2_VISB -- are defined as follows:
+
+      -  Z axis is along the camera boresight;
+         
+      -  X axis is along detector lines and points toward the right 
+         side of the image;
+         
+      -  Y axis completes the right hand frame;
+      
+      -  the origin of this frame is located at the camera focal point.
+
+   This diagram illustrates the camera frames:
+
+      [TBD]
+
+   Since the cameras were rigidly mounted on the instrument platform
+   their frames are defined as fixed offset frames with respect to the
+   platform frame.
+
+   The camera orientation with respect to the platform was specified in
+   [4] as the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the following angle values for each of the two cameras:
+
+      VISA:
+
+         CROSS_CONE         =  -0.679330, deg
+         CONE               =  -0.023270, deg
+         RASTER_ORIENTATION =  89.880691, deg
+
+      VISB:
+
+         CROSS_CONE         =   0.663000, deg
+         CONE               =  -0.044000, deg
+         RASTER_ORIENTATION =  89.663790, deg
+
+   These angles are used in the frame definition below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the camera to the platform frame -- see [1].)
+
+   \begindata
+
+      FRAME_VO2_VISA           = -30001
+      FRAME_-30001_NAME        = 'VO2_VISA'
+      FRAME_-30001_CLASS       = 4
+      FRAME_-30001_CLASS_ID    = -30001
+      FRAME_-30001_CENTER      = -30
+      TKFRAME_-30001_SPEC      = 'ANGLES'
+      TKFRAME_-30001_RELATIVE  = 'VO2_PLATFORM'
+      TKFRAME_-30001_ANGLES    = ( -0.679330, 0.023270, -89.880691 )
+      TKFRAME_-30001_AXES      = (  1,        2,          3        )
+      TKFRAME_-30001_UNITS     = 'DEGREES'
+
+      FRAME_VO2_VISB           = -30002
+      FRAME_-30002_NAME        = 'VO2_VISB'
+      FRAME_-30002_CLASS       = 4
+      FRAME_-30002_CLASS_ID    = -30002
+      FRAME_-30002_CENTER      = -30
+      TKFRAME_-30002_SPEC      = 'ANGLES'
+      TKFRAME_-30002_RELATIVE  = 'VO2_PLATFORM'
+      TKFRAME_-30002_ANGLES    = (  0.663000, 0.044000, -89.663790 )
+      TKFRAME_-30002_AXES      = (  1,        2,          3        )
+      TKFRAME_-30002_UNITS     = 'DEGREES'
+
+   \begintext
+
+   Thomas Duxbury provided a different set of angle values for the cameras
+   (see [5]):
+
+      VISA:
+
+         CROSS_CONE         =  -0.679300, deg
+         CONE               =  -0.023300, deg
+         RASTER_ORIENTATION =  89.880700, deg
+      
+      VISB:
+
+         CROSS_CONE         =   0.663000, deg
+         CONE               =  -0.044000, deg
+         RASTER_ORIENTATION =  89.663800, deg
+
+   To make this alignment solution available, two more frames parallel
+   to the camera frames and including the ``_TB'' suffix in the name
+   and defined below.
+ 
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the camera to the platform frame -- see [1].)
+
+   \begindata
+
+      FRAME_VO1_VISA_TD        = -30011
+      FRAME_-30011_NAME        = 'VO1_VISA_TD'
+      FRAME_-30011_CLASS       = 4
+      FRAME_-30011_CLASS_ID    = -30011
+      FRAME_-30011_CENTER      = -30
+      TKFRAME_-30011_SPEC      = 'ANGLES'
+      TKFRAME_-30011_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-30011_ANGLES    = ( -0.679300, 0.023300, -89.880700 )
+      TKFRAME_-30011_AXES      = (  1,        2,          3        )
+      TKFRAME_-30011_UNITS     = 'DEGREES'
+
+      FRAME_VO1_VISB_TD        = -30012
+      FRAME_-30012_NAME        = 'VO1_VISB_TD'
+      FRAME_-30012_CLASS       = 4
+      FRAME_-30012_CLASS_ID    = -30012
+      FRAME_-30012_CENTER      = -30
+      TKFRAME_-30012_SPEC      = 'ANGLES'
+      TKFRAME_-30012_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-30012_ANGLES    = (  0.663000, 0.044000, -89.663800 )
+      TKFRAME_-30012_AXES      = (  1,        2,          3        )
+      TKFRAME_-30012_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+IRTM Frame
+-------------------------------------------------------------------------------
+
+   The frame for the Infrared Thermal Mapper -- VO2_IRTM -- is defined 
+   as follows:
+
+      [TBD]
+
+   This diagram illustrates the IRTM frame:
+
+      [TBD]
+
+   Since the IRTM instrument was rigidly mounted on the instrument
+   platform its frame is defined as fixed offset frames with respect to
+   the platform frame.
+
+   The instrument orientation with respect to the platform can be
+   specified using the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the nominal angle values:
+
+      CROSS_CONE         =   0.0, deg
+      CONE               =   0.0, deg
+      RASTER_ORIENTATION =  90.0, deg
+
+   These angles are used in the frame definition below.
+ 
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the instrument to the platform frame -- see
+   [1].)
+
+   \begindata
+
+      FRAME_VO2_IRTM           = -30003
+      FRAME_-30003_NAME        = 'VO2_IRTM'
+      FRAME_-30003_CLASS       = 4
+      FRAME_-30003_CLASS_ID    = -30003
+      FRAME_-30003_CENTER      = -30
+      TKFRAME_-30003_SPEC      = 'ANGLES'
+      TKFRAME_-30003_RELATIVE  = 'VO2_PLATFORM'
+      TKFRAME_-30003_ANGLES    = (  0.0, 0.0, -90.0 )
+      TKFRAME_-30003_AXES      = (  1,   2,     3   )
+      TKFRAME_-30003_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+MAWD Frame
+-------------------------------------------------------------------------------
+
+   The frame for the Mars Atmosphere Water Detector (MAWD) -- VO2_MAWD
+   -- is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the MAWD frame:
+
+      [TBD]
+
+   Since the MAWD instrument was rigidly mounted on the instrument
+   platform its frame is defined as fixed offset frames with respect to
+   the platform frame.
+
+   The instrument orientation with respect to the platform can be
+   specified using the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the nominal angle values:
+
+      CROSS_CONE         =   0.0, deg
+      CONE               =   0.0, deg
+      RASTER_ORIENTATION =  90.0, deg
+
+   These angles are used in the frame definition below.
+ 
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the instrument to the platform frame -- see
+   [1].)
+
+   \begindata
+
+      FRAME_VO2_MAWD           = -30004
+      FRAME_-30004_NAME        = 'VO2_MAWD'
+      FRAME_-30004_CLASS       = 4
+      FRAME_-30004_CLASS_ID    = -30004
+      FRAME_-30004_CENTER      = -30
+      TKFRAME_-30004_SPEC      = 'ANGLES'
+      TKFRAME_-30004_RELATIVE  = 'VO2_PLATFORM'
+      TKFRAME_-30004_ANGLES    = (  0.0, 0.0, -90.0 )
+      TKFRAME_-30004_AXES      = (  1,   2,     3   )
+      TKFRAME_-30004_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+Viking Orbiter 2 NAIF ID Codes -- Definition Section
+========================================================================
+
+   This section contains name to NAIF ID mappings for the VO2. Once the
+   contents of this file is loaded into the KERNEL POOL, these mappings
+   become available within SPICE, making it possible to use names
+   instead of ID code in the high level SPICE routine calls.
+
+   Spacecraft and its structures: 
+   ------------------------------
+
+      VIKING ORBITER 2           -30
+      VO2                        -30
+
+      VO2_SPACECRAFT_BUS         -30900
+      VO2_SC_BUS                 -30900
+      VO2_SPACECRAFT             -30900
+
+      VO2_INSTRUMENT_PLATFORM    -30000
+      VO2_PLATFORM               -30000
+
+   Science Instruments:
+   --------------------
+
+      VO2_VISA                   -30001
+      VO2_VISB                   -30002
+
+      VO2_IRTM                   -30003
+
+      VO2_MAWD                   -30004
+
+   The mappings summarized in this table are implemented by the keywords 
+   below.
+
+   \begindata
+
+      NAIF_BODY_NAME += ( 'VIKING ORBITER 2'          )
+      NAIF_BODY_CODE += ( -30                         )
+
+      NAIF_BODY_NAME += ( 'VO2'                       )
+      NAIF_BODY_CODE += ( -30                         )
+
+      NAIF_BODY_NAME += ( 'VO2_SPACECRAFT_BUS'        )
+      NAIF_BODY_CODE += ( -30900                      )
+
+      NAIF_BODY_NAME += ( 'VO2_SC_BUS'                )
+      NAIF_BODY_CODE += ( -30900                      )
+
+      NAIF_BODY_NAME += ( 'VO2_SPACECRAFT'            )
+      NAIF_BODY_CODE += ( -30900                      )
+
+      NAIF_BODY_NAME += ( 'VO2_INSTRUMENT_PLATFORM'   )
+      NAIF_BODY_CODE += ( -30000                      )
+
+      NAIF_BODY_NAME += ( 'VO2_PLATFORM'              )
+      NAIF_BODY_CODE += ( -30000                      )
+
+      NAIF_BODY_NAME += ( 'VO2_VISA'                  )
+      NAIF_BODY_CODE += ( -30001                      )
+
+      NAIF_BODY_NAME += ( 'VO2_VISB'                  )
+      NAIF_BODY_CODE += ( -30002                      )
+
+      NAIF_BODY_NAME += ( 'VO2_IRTM'                  )
+      NAIF_BODY_CODE += ( -30003                      )
+
+      NAIF_BODY_NAME += ( 'VO2_MAWD'                  )
+      NAIF_BODY_CODE += ( -30004                      )
+
+   \begintext
diff --git a/tests/pytests/data/f704b28/f704b28_0.xsp b/tests/pytests/data/f704b28/f704b28_0.xsp
new file mode 100644
index 0000000..c34e3bb
--- /dev/null
+++ b/tests/pytests/data/f704b28/f704b28_0.xsp
@@ -0,0 +1,418 @@
+DAFETF NAIF DAF ENCODED TRANSFER FILE
+'DAF/SPK '
+'2'
+'6'
+'SPKMERGE                                                    '
+BEGIN_ARRAY 1 217
+'17jul78                                 '
+'-2855CCF9643998^8'
+'-2855C20442B07^8'
+'-1E'
+'4'
+'E'
+'1'
+217
+'-2855CA178D8AD2^8'
+'5778B30424^2'
+'AEF1660848^2'
+'112E90E0D04^3'
+'18528A98024^3'
+'1F76844F344^3'
+'269A7E06664^3'
+'2A2C7AE1FF4^3'
+'2DBE77BD984^3'
+'31507499314^3'
+'34E27174CA4^3'
+'38746E50634^3'
+'3C066B2BFC4^3'
+'3F986807954^3'
+'4144D68E85^3'
+'391FCDB99^3'
+'E7367D1AA9F138^3'
+'-4A3E7264FB40E8^0'
+'-1A72883E1B7259^3'
+'14C0C6E20D5EC7^1'
+'2121F9631CC502^4'
+'24FC71043E443C^1'
+'-D0E66956848C88^-3'
+'D6B2EC3FAB9C5^-4'
+'-114A36BA5B68FD^-4'
+'1CD27CC111448B^-5'
+'-3A85707B6B244C^-6'
+'7E62FE39B0CAB8^-7'
+'-D15D0471B3A388^-8'
+'-18342A689BE436^-8'
+'1C0CDBC210C906^-8'
+'-DBD13F2E110EB8^-9'
+'565345819DEC98^-9'
+'-268BB81^-9'
+'-17F72FAB6E776F^-9'
+'0^0'
+'0^0'
+'1809C1B1F23E8D^-3'
+'-82401B48C72C58^-4'
+'E53C65767CAF08^-5'
+'-1D425F281E63F5^-5'
+'4811D791107AAC^-6'
+'-C8B2D8BD7FB8B^-7'
+'2416899EFEF784^-7'
+'-4EB0B3E5B54EBC^-8'
+'-1A596739F14CE4^-9'
+'7E1230A21337BC^-9'
+'-4A07A6A6819C1C^-9'
+'24AA8A19^-9'
+'0^0'
+'0^0'
+'0^0'
+'-1DEE6018E0AEC6^-2'
+'F3AB1A24C03DB^-4'
+'-A963EAB325C2A8^-5'
+'4FD433990A5944^-6'
+'13B3931FDF1914^-6'
+'-94C77C828C61C^-7'
+'33862ED76AF3EC^-7'
+'-F7EFA094ABDE38^-8'
+'443EDBD4948828^-8'
+'-10BAA896C95A08^-8'
+'308D2AE50E79CC^-9'
+'-548F4B^-A'
+'0^0'
+'0^0'
+'0^0'
+'D^1'
+'C^1'
+'B^1'
+'B^1'
+'-2855C5A66C739E^8'
+'AEF1660848^2'
+'1066A190C6C^3'
+'15DE2CC109^3'
+'1B55B7F14B4^3'
+'20CD43218D8^3'
+'2644CE51CFC^3'
+'2BBC598212^3'
+'3133E4B2544^3'
+'36AB6FE2968^3'
+'3C22FB12D8C^3'
+'419A86431B^3'
+'471211735D4^3'
+'4C899CA39F8^3'
+'520127D3E1C^3'
+'5840A2542D8^3'
+'CC471279EE5008^3'
+'-72D2F185F0458^0'
+'41B4D174E7664C^3'
+'14951A53FA57F1^1'
+'2A621FDB1F1AE^4'
+'1E1535B9BDFB27^1'
+'-639500687603F4^-3'
+'B431860D982858^-4'
+'-11EADAF973F71^-4'
+'1FD36E122C23E1^-5'
+'-3F82CF6A06084E^-6'
+'8B9C6D8C293E28^-7'
+'-1474BDD113E518^-7'
+'3064A85E0DD0D6^-8'
+'-64D51CD3EA144C^-9'
+'4B7F7717C15838^-A'
+'4B03183968231^-A'
+'-33AA3B245DCF2^-A'
+'19A6533494B559^-A'
+'-C071A67E1AAAB^-B'
+'4D555C^-B'
+'-1FF17845A9B315^-3'
+'-4ACCDBC9FE402^-4'
+'BC208654E24CE^-5'
+'-1A172784BC8AD1^-5'
+'3D25617344864C^-6'
+'-9B59E66B558C08^-7'
+'1A9A546AA021FA^-7'
+'-4D2BD0BB0CC138^-8'
+'E53DA8C21CD5^-9'
+'-28A5A3AE8173E4^-9'
+'57BCD16DFE81F^-A'
+'59AE272F0AD0A^-B'
+'-D5376613F93B6^-B'
+'8DEC6A^-B'
+'0^0'
+'-14A7DE72C19BE9^-2'
+'11DC493272BC08^-3'
+'-123E81A58FC5B5^-4'
+'1427203E1EB0BB^-5'
+'-12D6AA99A2FEB2^-6'
+'-7E654A8A84001^-8'
+'A34DCE5A7B205^-8'
+'-39B53F2576B528^-8'
+'119AEF57EFC6C3^-8'
+'-53C66933D4A96^-9'
+'18FDC57C08023A^-9'
+'-77A298B9958F98^-A'
+'22A31749F3BF86^-A'
+'-9B6C5D37A6D98^-B'
+'BF95^-C'
+'F^1'
+'E^1'
+'D^1'
+'E^1'
+'-2855BE220D1142^8'
+'AEF1660848^2'
+'15DE2CC109^3'
+'20CD43218D8^3'
+'2BBC598212^3'
+'36AB6FE2968^3'
+'419A86431B^3'
+'4C899CA39F8^3'
+'5778B30424^3'
+'6267C964A88^3'
+'6D56DFC52D^3'
+'7845F625B18^3'
+'83350C8636^3'
+'88AC97B6784^3'
+'8E2422E6BA8^3'
+'939BAE16FCC^3'
+'8E87E891288A7^3'
+'-8EF838B3E368C8^0'
+'D7D5CCA114FA08^3'
+'134754631B4F1A^1'
+'369760BB037FA6^4'
+'1680D37A8EA5B6^1'
+'-211647B5D0C884^-3'
+'36ABFD037B9BC4^-4'
+'-575EC0CEDC8CC8^-5'
+'B1A8ACD563F378^-6'
+'-1BCFE49431D6E8^-6'
+'5330A7A7128004^-7'
+'-121562C31BAE24^-7'
+'476B5A2905DEB^-8'
+'-138C632877D2F4^-8'
+'5C40ED25ED6B84^-9'
+'-1C0B8FF8F196C4^-9'
+'7E5E1C9CBED218^-A'
+'-1910C975627BCE^-A'
+'-17A9A^-A'
+'-C42A5D90B21648^-B'
+'-320D0AA32DE3F4^-3'
+'-5599862CD93FF^-5'
+'2485230391716C^-5'
+'-6A9D4C39100D^-6'
+'14638C3C896ED4^-6'
+'-4667037B067F68^-7'
+'11409DFF38B91C^-7'
+'-4C3A45C062FF44^-8'
+'177200B109C184^-8'
+'-7EB4C830AC8A5C^-9'
+'2E2D0E9BD0E63C^-9'
+'-11AE90BCAAB55C^-9'
+'6D87228624CCA^-A'
+'-21D80666809AE^-A'
+'AC569C^-B'
+'-CAAEC87C677208^-3'
+'7F8A8BE7B27EF8^-4'
+'-89F680AFF32F2^-5'
+'CC5DCC91C3135^-6'
+'-1749792007B623^-6'
+'2F7DBBC2763496^-7'
+'-5BC91C334F6F1C^-8'
+'39B8B3F22F4B38^-9'
+'5173C481470DC^-9'
+'-3DDE5001FBB2C8^-9'
+'24DB7F6CCE09D^-9'
+'-1569546A68E789^-9'
+'354D22543ABDB^-A'
+'0^0'
+'0^0'
+'F^1'
+'E^1'
+'E^1'
+'C^1'
+'-2855CA178D8ADA^8'
+'-2855C5A66C73AC^8'
+'-2855BE220D10F6^8'
+'3^1'
+END_ARRAY 1 217
+BEGIN_ARRAY 2 39
+'DE-0721LE-0721                          '
+'-2855CCF9643998^8'
+'-2855C20442B07^8'
+'A'
+'0'
+'1'
+'2'
+39
+'-284B80C^8'
+'A8C^5'
+'B4DB8D39813D78^5'
+'2219D62A9073FA^4'
+'-ABC0EAEF2830A8^1'
+'240A103C98C7C8^0'
+'56571E34B9324C^-2'
+'-4E7BDE09D32D38^-4'
+'E64111B09E9EF^-5'
+'-EE2EF26FA95DF^-6'
+'-28CD908B30F476^-6'
+'-9C68937F8CE058^-7'
+'-844BAF93ECE28^-8'
+'-7BEDB918342BAC^5'
+'1038A382E451A5^4'
+'117925862F7762^2'
+'-9EFFCDAD4EDCB^-1'
+'11102AE4DECE24^-1'
+'26EDF525FF338E^-3'
+'58C151D8901A9C^-4'
+'32C264F1DE231C^-5'
+'765C304ACF47F4^-6'
+'2774C1A2ECD678^-7'
+'1CF99F4487B249^-8'
+'-3B24DFF5DF0DDE^5'
+'5F53A2BEEACFC8^3'
+'7BDF1CF183CCBC^1'
+'-6FE8B48C360FAC^-1'
+'7605B95819CF08^-2'
+'103A21C1DC0A02^-3'
+'2F9093CB4F39DE^-4'
+'1CE4760929628E^-5'
+'436080C1ABEEB^-6'
+'2536C35BC5A74A^-7'
+'1C776C546B97E5^-8'
+'-28560CC^8'
+'1518^6'
+'23^2'
+'1^1'
+END_ARRAY 2 39
+BEGIN_ARRAY 3 39
+'DE-0721LE-0721                          '
+'-2855CCF9643998^8'
+'-2855C20442B07^8'
+'4'
+'0'
+'1'
+'2'
+39
+'-28560CC^8'
+'1518^6'
+'-D2949EAA6D176^7'
+'D912CFD8EF98F^6'
+'F49705C27A7258^5'
+'-174A261A48316B^4'
+'-1661AEB7E518C2^3'
+'-39DA7CB748E62C^1'
+'-77D04C65911D7^-1'
+'457A5A5DBB85B^-2'
+'2C71F33C043268^-3'
+'-4E8047E231E444^-5'
+'C90C25153795A8^-7'
+'-53305E42F0345C^7'
+'-18192B9FCA53F3^7'
+'5FEC3AE45CBC7^5'
+'5192EF70AB5CE8^4'
+'18358285CC8CCB^2'
+'-2B6D9A7826FF46^1'
+'-153C8EC5EB8023^0'
+'-638B27BBE5F26C^-2'
+'-A13449BED96E^-4'
+'-7357BD25BDC1DC^-7'
+'23C27C71CA4CEC^-5'
+'-20712534C43D04^7'
+'-B6BAD05BBB3D78^6'
+'255F039BD6289E^5'
+'260BA180638B02^4'
+'14CD5A29B4E9B5^2'
+'-12598D42131F4C^1'
+'-98B92213E03238^-1'
+'-2F66819D3481BA^-2'
+'-585EB270B6B5C^-4'
+'-1A3D1B2AE7FC82^-5'
+'13C27A6F2C0833^-5'
+'-286B24C^8'
+'2A3^6'
+'23^2'
+'1^1'
+END_ARRAY 3 39
+BEGIN_ARRAY 4 54
+'MAR097                                  '
+'-2855CCF9643998^8'
+'-2855C20442B07^8'
+'1F3'
+'4'
+'1'
+'3'
+54
+'-2855E29^8'
+'2A3^4'
+'15E7E8E157E3B1^-3'
+'-77BC52C906DC84^-3'
+'61985DFF0923EC^-3'
+'2659CE2DE2093C^-3'
+'-10A5A8E868AA4C^-3'
+'-315B22832BCEA2^-4'
+'10E1313CD804B9^-4'
+'140AE41056658^-5'
+'278D6CDE012C54^-3'
+'-7F72238AADFEEC^-3'
+'-3C4DBD539AABF8^-3'
+'387A1D3596C98E^-3'
+'85EC2FD6A362^-4'
+'-551A81D5B7EF2C^-4'
+'-533A488729EC1^-5'
+'436AA73C8876E^-5'
+'7BF8076F6A7728^-4'
+'-18EBB5206BD3D^-4'
+'-583B6DD884053C^-3'
+'818A68979473F^-4'
+'E0A7845E2BCD88^-4'
+'-10FE773764FC12^-4'
+'-C7C45CEE66172^-5'
+'186C50A7BFA94C^-5'
+'-76AFC215865DE^-7'
+'66592872BA4FF8^-6'
+'4BFC62994CD2CC^-6'
+'-2DB50D66A45608^-6'
+'-B489391AB4B518^-7'
+'4CD239F87669B^-7'
+'6A6B21559BB488^-8'
+'0^0'
+'6893AD155915C^-7'
+'-43911A77A18CAC^-6'
+'6DBDFD711F2F8C^-6'
+'17EA84F0109567^-6'
+'-12C6407976845B^-6'
+'-17AC74341993EE^-7'
+'165F50E8792347^-7'
+'0^0'
+'6DC3899DABFA9C^-7'
+'-5ECD3DA68D7368^-6'
+'EE6E33909DFD68^-7'
+'270CB9C58F676A^-6'
+'-3858B39D136578^-7'
+'-38D29796DE7614^-7'
+'81AD7A2FF8223^-8'
+'0^0'
+'-28560CC^8'
+'546^4'
+'32^2'
+'1^1'
+END_ARRAY 4 54
+TOTAL_ARRAYS 4
+ ~NAIF/SPC BEGIN COMMENTS~
+; /home/pgiroux/Desktop/vo2_sliced/f704b28_0.bsp LOG FILE
+
+; Created 2019-09-27/11:28:08.00.
+;
+; BEGIN SPKMERGE COMMANDS
+
+LEAPSECONDS_KERNEL   = /usgs/cpkgs/isis3/data/base/kernels/lsk/naif0012.tls
+
+SPK_KERNEL           = /home/pgiroux/Desktop/vo2_sliced/f704b28_0.bsp
+  SOURCE_SPK_KERNEL  = /usgs/cpkgs/isis3/data/viking2/kernels/spk/vo2_rcon.bsp
+    INCLUDE_COMMENTS = NO
+    BODIES           = -30
+    BEGIN_TIME       = 1978 JUL 23 04:31:17.425
+    END_TIME         = 1978 JUL 23 05:18:02.556
+  SOURCE_SPK_KERNEL  = /usgs/cpkgs/isis3/data/base/kernels/spk/mar097.bsp
+    INCLUDE_COMMENTS = NO
+    BODIES           = 4, 10, 499
+    BEGIN_TIME       = 1978 JUL 23 04:31:17.425
+    END_TIME         = 1978 JUL 23 05:18:02.556
+
+; END SPKMERGE COMMANDS
+ ~NAIF/SPC END COMMENTS~
diff --git a/tests/pytests/data/f704b28/f704b28_isis3.lbl b/tests/pytests/data/f704b28/f704b28_isis3.lbl
new file mode 100644
index 0000000..01b91f0
--- /dev/null
+++ b/tests/pytests/data/f704b28/f704b28_isis3.lbl
@@ -0,0 +1,103 @@
+Object = IsisCube
+  Object = Core
+    StartByte   = 65537
+    Format      = Tile
+    TileSamples = 1204
+    TileLines   = 1056
+
+    Group = Dimensions
+      Samples = 1204
+      Lines   = 1056
+      Bands   = 1
+    End_Group
+
+    Group = Pixels
+      Type       = UnsignedByte
+      ByteOrder  = Lsb
+      Base       = 0.0
+      Multiplier = 1.0
+    End_Group
+  End_Object
+
+  Group = Instrument
+    SpacecraftName       = VIKING_ORBITER_2
+    InstrumentId         = VISUAL_IMAGING_SUBSYSTEM_CAMERA_B
+    TargetName           = MARS
+    StartTime            = 1978-07-23T05:01:26
+    ExposureDuration     = 0.067880 <seconds>
+    SpacecraftClockCount = 60266453
+    FloodModeId          = ON
+    GainModeId           = LOW
+    OffsetModeId         = ON
+  End_Group
+
+  Group = Archive
+    DataSetId       = VO1/VO2-M-VIS-2-EDR-V2.0
+    ProductId       = 704B28
+    MissonPhaseName = CONTINUATION_MISSION
+    ImageNumber     = 60266453
+    OrbitNumber     = 704
+  End_Group
+
+  Group = BandBin
+    FilterName = MINUS_BLUE
+    FilterId   = 2
+    Center     = 0.55 <micrometers>
+    Width      = 0.22 <micrometers>
+  End_Group
+
+  Group = Kernels
+    NaifFrameCode = -30002
+    CameraVersion = 1
+  End_Group
+
+  Group = Reseaus
+    Line     = (5, 7, 9, 10, 11, 12, 14, 15, 17, 19, 20, 135, 136, 137, 138,
+                139, 140, 142, 143, 144, 146, 148, 149, 265, 266, 267, 268,
+                269, 270, 271, 272, 274, 276, 278, 395, 395, 397, 398, 398,
+                399, 400, 401, 402, 404, 406, 407, 525, 526, 526, 527, 528,
+                528, 529, 530, 531, 533, 535, 654, 655, 655, 656, 657, 657,
+                658, 659, 660, 661, 663, 664, 784, 784, 785, 785, 786, 786,
+                787, 788, 789, 790, 793, 914, 914, 914, 914, 915, 915, 916,
+                916, 917, 918, 920, 922, 1043, 1043, 1043, 1043, 1044, 1044,
+                1045, 1045, 1046, 1048, 1051)
+    Sample   = (23, 141, 257, 373, 489, 605, 720, 836, 952, 1068, 1185, 23,
+                82, 199, 315, 431, 546, 662, 778, 894, 1010, 1126, 1184, 24,
+                141, 257, 373, 489, 605, 720, 836, 952, 1068, 1184, 24, 82,
+                199, 315, 432, 547, 663, 779, 895, 1011, 1127, 1184, 24, 141,
+                258, 374, 490, 605, 721, 837, 953, 1070, 1185, 24, 83, 200,
+                316, 432, 548, 664, 780, 896, 1012, 1128, 1185, 24, 142, 258,
+                374, 490, 606, 722, 838, 954, 1070, 1186, 23, 82, 199, 316,
+                432, 548, 664, 780, 896, 1013, 1129, 1186, 22, 140, 257, 374,
+                489, 606, 722, 838, 954, 1071, 1187)
+    Type     = (1, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+                5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5,
+                5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5,
+                5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5,
+                5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6)
+    Valid    = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
+    Template = $viking2/reseaus/vo2.visb.template.cub
+    Status   = Nominal
+  End_Group
+End_Object
+
+Object = Label
+  Bytes = 65536
+End_Object
+
+Object = History
+  Name      = IsisCube
+  StartByte = 1336961
+  Bytes     = 428
+End_Object
+
+Object = OriginalLabel
+  Name      = IsisCube
+  StartByte = 1337389
+  Bytes     = 2042
+End_Object
+End
diff --git a/tests/pytests/data/f704b28/f704b28_pds3.lbl b/tests/pytests/data/f704b28/f704b28_pds3.lbl
new file mode 100644
index 0000000..154343c
--- /dev/null
+++ b/tests/pytests/data/f704b28/f704b28_pds3.lbl
@@ -0,0 +1,1632 @@
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+/*          FILE FORMAT AND LENGTH */
+RECORD_TYPE                      = VARIABLE_LENGTH
+RECORD_BYTES                     = 1204
+FILE_RECORDS                     = 2176
+LABEL_RECORDS                    = 60
+/*          POINTERS TO START RECORDS OF MAJOR OBJECTS IN FILE */
+^IMAGE_HISTOGRAM                 = 61
+^ENCODING_HISTOGRAM              = 62
+^ENGINEERING_TABLE               = 64
+^LINE_HEADER_TABLE               = 65
+^IMAGE                           = 1121
+/*          IMAGE DESCRIPTION */
+DATA_SET_ID                      = 'VO1/VO2-M-VIS-2-EDR-V2.0'
+SPACECRAFT_NAME                  = VIKING_ORBITER_2
+MISSION_PHASE_NAME               = CONTINUATION_MISSION
+TARGET_NAME                      = MARS
+IMAGE_ID                         = '704B28'
+IMAGE_NUMBER                     = 60266453
+IMAGE_TIME                       = 1978-07-23T05:01:26Z
+EARTH_RECEIVED_TIME              = 1978-07-23T06:18:16Z
+ORBIT_NUMBER                     = 704
+INSTRUMENT_NAME                  = VISUAL_IMAGING_SUBSYSTEM_CAMERA_B
+GAIN_MODE_ID                     = LOW
+FLOOD_MODE_ID                    = ON
+OFFSET_MODE_ID                   = ON
+FILTER_NAME                      = MINUS_BLUE
+EXPOSURE_DURATION                = 0.067880 <SECONDS>
+NOTE                             = "MEDIUM RESOLUTION MAPPING SEQUENCE"
+/*          DESCRIPTION OF THE OBJECTS CONTAINED IN FILE */
+OBJECT                           = IMAGE_HISTOGRAM
+ ITEMS                           = 256
+ ITEM_TYPE                       = VAX_INTEGER
+ ITEM_BITS                       = 32
+END_OBJECT
+OBJECT                           = ENCODING_HISTOGRAM
+ ITEMS                           = 511
+ ITEM_TYPE                       = VAX_INTEGER
+ ITEM_BITS                       = 32
+END_OBJECT
+OBJECT                           = ENGINEERING_TABLE
+ ROWS                            = 1
+ ROW_BYTES                       = 152
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+
+OBJECT                         = ENGINEERING_TABLE_STRUCTURE
+  INTERCHANGE_FORMAT           = BINARY
+  BYTES                        = 152
+  NOTE                         = "This structure describes the format of
+        the engineering record that is included in each image file.
+        This record contains the first 152 bytes of data extracted from
+        the Mission and Test Imaging System (MTIS) header record on each
+        file of an imaging EDR tape."
+
+  OBJECT                       = COLUMN
+    NAME                       = MTIS_RECORD_ID
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 1
+    BYTES                      = 2
+    DESCRIPTION                = "Mission and Test Imaging System record
+        ID."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PHYSICAL_SEQUENCE_NUMBER
+    DATA_TYPE                  = VAX_UNSIGNED_INTEGER
+    START_BYTE                 = 3
+    BYTES                      = 2
+    DESCRIPTION                = "Physical sequence number on Experiment
+        Data Record tape.  Not used."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LOGICAL_SEQUENCE_NUMBER
+    DATA_TYPE                  = VAX_UNSIGNED_INTEGER
+    START_BYTE                 = 5
+    BYTES                      = 2
+    DESCRIPTION                = "Logical sequence number on Experiment
+        Data Record tape.  Not used."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 7
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time year and day
+        value.  Time of first line segment in the file containing valid
+        data.  This field is NOT stored in VAX least significant byte
+        first format."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FIRST_ERT_YEAR
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 1
+      BITS                     = 7
+      DESCRIPTION              = "Earth Received Time year of century
+        (1900).  Time of first line record in the file containing valid
+        data.  This field is often incorrect."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FIRST_ERT_DAY
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 7
+      BITS                     = 9
+      DESCRIPTION              = "Earth Received Time day of year."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT_MINUTE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 9
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time minute of day."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT_MILLISECOND
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 11
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time millisecond of
+        minute."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 13
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time year and day
+        value.  Time of last line segment of the file containing valid
+        data."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LAST_ERT_YEAR
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 1
+      BITS                     = 7
+      DESCRIPTION              = "Earth Received Time year of century
+        (1900).  This field is often incorrect."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LAST_ERT_DAY
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 8
+      BITS                     = 9
+      DESCRIPTION              = "Earth Received Time day of year."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT_MINUTE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 15
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time minute of day."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT_MILLISECOND
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 17
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time millisecond of
+        minute."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 19
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem count for the
+        first line segment of the file containing valid data.  Note that
+        this may not correspond to the FDS count for line 1, segment 1."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 23
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem count for the
+        last line segment of the file containing valid data.  Note that
+        this may not correspond to the FDS count for segment 7 of line
+        1056."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EDR_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 27
+    BYTES                      = 6
+    DESCRIPTION                = "Tape reel identifier of the original
+        EDR tape for this image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EDR_FILE_NUMBER
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 33
+    BYTES                      = 2
+    DESCRIPTION                = "File number of image on original EDR
+        tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILL_IN
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 34
+    BYTES                      = 1
+    DESCRIPTION                = "Value used to fill in missing samples
+        (always zero)."
+  END_OBJECT                   = COLUMN
+  OBJECT                       = COLUMN
+    NAME                       = TRACK_PRESENCE_MASK
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 36
+    BYTES                      = 1
+    DESCRIPTION                = "Mask indicating which tracks are
+        present in the image.  The nominal value is HEX 7F, indicating
+        that all seven tracks are present."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = AVERAGE_PIXEL
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 37
+    BYTES                      = 2
+    DESCRIPTION                = "Average pixel value for image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_1
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 39
+    BYTES                      = 4
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MINIMUM_SNR
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 43
+    BYTES                      = 2
+    FACTOR                     = 0.03125
+    DESCRIPTION                = "Minimum signal to noise ratio.  The
+        minimum noise level found for the scan lines.  Divide by 32 to
+        get the actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MAXIMUM_SNR
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 45
+    BYTES                      = 2
+    FACTOR                     = 0.03125
+    DESCRIPTION                = "Maximum signal to noise ratio.  The
+        maximum noise level found for the scan lines.  Divide by 32 to
+        get the actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_2
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 47
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MINIMUM_AGC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 49
+    BYTES                      = 2
+    FACTOR                     = 0.0625
+    DESCRIPTION                = "Automatic gain control minimum.
+        Divide by 16 to get actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MAXIMUM_AGC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 51
+    BYTES                      = 2
+    FACTOR                     = 0.0625
+    DESCRIPTION                = "Automatic gain control maximum.
+        Divide by 16 to get actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_3
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 53
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 55
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that contain some valid data (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 57
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that were fully synchronized (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 59
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that were partly synchronized (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI0_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 61
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 0 (maximum is 7 x 1056).
+        DQI0 indicates bad data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI1_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 63
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 1 (maximum is 7 x 1056).
+        DQI1 means SNR low, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI2_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 65
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 2 (maximum is 7 x 1056).
+        DQI2 means SNR good, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI3_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 67
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 3 (maximum is 7 x 1056).
+        DQI3 means SNR low, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI4_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 69
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 4 (maximum is 7 x 1056).
+        DQI4 means SNR good, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FDS_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 71
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected FDS counts."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PNERROR_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 73
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected pseudonoise codes."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = ADJUSTED_PNERROR_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 75
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected pseudonoise codes adjusted based on the
+        number of line segments processed versus the total in a full
+        image (7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNREADABLE_RECORDS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 77
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that could not be read from the Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LOGICAL_SEQUENCE_BREAKS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 79
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of breaks in logical
+        sequence number in reading the System/Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DATA_BREAKS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 81
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of breaks in data
+        sequence in reading the System/Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_4
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 83
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 85
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of lines in the file that
+        contain some valid data (nominal is 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULL_LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 87
+    BYTES                      = 2
+    DESCRIPTION                = "Number of lines in the file that are
+        composed of seven line segments."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTIAL_LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 89
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line records in the
+        file that contain some valid data but are not composed of seven
+        line segments."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 91
+    BYTES                      = 2
+    DESCRIPTION                = "First line in image containing valid
+        data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 93
+    BYTES                      = 2
+    DESCRIPTION                = "Last line in image containing valid
+        data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_5
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 95
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = IMAGE_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 97
+    BYTES                      = 6
+    DESCRIPTION                = "Image identifier (PICNO) for this
+        image, formatted OOOSNN, where OOO is orbit number, S is
+        spacecraft identifier (A for Viking Orbiter 1 prime and extended
+        missions; B for Viking Orbiter 2; and S for Viking Orbiter 1
+        Survey mission)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VRP_RUN_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 103
+    BYTES                      = 2
+    DESCRIPTION                = "Viking Reconstruction Processing run
+        number."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DISK_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 105
+    BYTES                      = 6
+    DESCRIPTION                = "MTIS disk identifier of the original
+        EDR file for this image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_6
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 111
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRANSMITTED_CODE_WORD1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 113
+    BYTES                      = 2
+    DESCRIPTION                = "Transmitted command code word for the
+        image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  Where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CATHODE_CURRENT_FLAG
+      START_BIT                = 7
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Cathode current off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = GAIN_FLAG
+      START_BIT                = 8
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Gain mode low (0) or high (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LIGHT_FLOOD_FLAG
+      START_BIT                = 9
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Light flood off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_STEP
+      START_BIT                = 10
+      BITS                     = 2
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter step indicator."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = EXPOSURE_CODE
+      START_BIT                = 12
+      BITS                     = 5
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Exposure interval code."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRANSMITTED_CODE_WORD2
+    DATA_TYPE                  = INTEGER
+    START_BYTE                 = 115
+    BYTES                      = 2
+    DESCRIPTION                = "Transmitted command code word 2 for
+        this image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_NUMBER
+      START_BIT                = 10
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter number:  where 1 is blue; 2 is
+        minus blue; 3 is violet; 4 is clear; 5 is green; and 6 is red."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CAMERA_SERIAL_NUMBER
+      START_BIT                = 13
+      BITS                     = 4
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Visual Imaging Subsystem camera serial
+        number."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = RECEIVED_CODE_WORD1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 117
+    BYTES                      = 2
+    DESCRIPTION                = "Received command code word for the
+        image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CATHODE_CURRENT_FLAG
+      START_BIT                = 7
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Cathode current (beam) off (0) or on
+        (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = GAIN_FLAG
+      START_BIT                = 8
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Gain mode low (0) or high (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LIGHT_FLOOD_FLAG
+      START_BIT                = 9
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Light flood off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_STEP
+      START_BIT                = 10
+      BITS                     = 2
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter step."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = EXPOSURE_CODE
+      START_BIT                = 12
+      BITS                     = 5
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Exposure interval code."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS50_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 121
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 50 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS15_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 123
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 15 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS12_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 125
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 12 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS5_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 127
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 5 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_MINUS15_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 129
+    BYTES                      = 2
+    DESCRIPTION                = "Minus 15 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_MINUS23_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 131
+    BYTES                      = 2
+    DESCRIPTION                = "Minus 23 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_AVERAGE_VIDEO
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 133
+    BYTES                      = 2
+    DESCRIPTION                = "Average video."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = POWER_CONVERTER_INPUT_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 135
+    BYTES                      = 2
+    DESCRIPTION                = "Power converter input current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = CATHODE_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 137
+    BYTES                      = 2
+    DESCRIPTION                = "Cathode current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = CATHODE_VOLTAGE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 139
+    BYTES                      = 2
+    DESCRIPTION                = "Cathode voltage."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILAMENT_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 141
+    BYTES                      = 2
+    DESCRIPTION                = "Filament current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FRAME_SWEEP_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 143
+    BYTES                      = 2
+    DESCRIPTION                = "Frame sweep current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_SWEEP_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 145
+    BYTES                      = 2
+    DESCRIPTION                = "Line sweep current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = GRID3_VOLTAGE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 147
+    BYTES                      = 2
+    DESCRIPTION                = "Grid 3 voltage."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FOCUS_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 149
+    BYTES                      = 2
+    DESCRIPTION                = "Focus current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DIGITAL_LADDER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 151
+    BYTES                      = 2
+    DESCRIPTION                = "Digital ladder."
+  END_OBJECT                   = COLUMN
+
+END_OBJECT                     = ENGINEERING_TABLE_STRUCTURE
+
+END
+END_OBJECT
+OBJECT                           = LINE_HEADER_TABLE
+ ROWS                            = 1056
+ ROW_BYTES                       = 62
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+
+OBJECT                         = LINE_HEADER_TABLE_STRUCTURE
+  INTERCHANGE_FORMAT           = BINARY
+  BYTES                        = 62
+  NOTE                         = "Viking Orbiter Image Line-header
+        Structure.  This label describes the structure of the 62-bytes
+        extracted from the end of each image line."
+
+  OBJECT                       = COLUMN
+    NAME                       = FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 1
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem (FDS) clock
+        count."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 5
+    BYTES                      = 2
+    DESCRIPTION                = "Flight Data Subsystem line number,
+        extracted from the telemetry record header information."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILL_IN
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 7
+    BYTES                      = 1
+    DESCRIPTION                = "Value used to fill in missing samples
+        (always zero)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRACK_PRESENCE_MASK
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 8
+    BYTES                      = 1
+    DESCRIPTION                = "Mask indicating which tracks are
+        present in this line.  The nominal value is HEX 7F, indicating
+        that all seven tracks are present."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = AVERAGE_PIXEL
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 9
+    BYTES                      = 2
+    DESCRIPTION                = "Average pixel value for this line."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 11
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        line that contain some valid data (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 13
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        that were fully synchronized (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 15
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        that were partly synchronized (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI0_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 17
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 0 (maximum is 7), indicating
+        bad data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI1_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 19
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 1 (maximum is 7), indicating
+        SNR low, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI2_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 21
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 2 (maximum is 7), indicating
+        SNR good, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI3_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 23
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 3 (maximum is 7), indicating
+        SNR low, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI4_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 25
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 4 (maximum is 7), indicating
+        SNR good, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 27
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 29
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT2
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 31
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK2
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 33
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT3
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 35
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK3
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 37
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+        START_BIT              = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT4
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 39
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK4
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 41
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT5
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 43
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK5
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 45
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT6
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 47
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK6
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 49
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT7
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 51
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK7
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 53
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EMBEDDED_SCIENCE_DATA
+    ITEMS                      = 7
+    DATA_TYPE                  = INTEGER
+    START_BYTE                 = 55
+    ITEM_BYTES                 = 1
+    DESCRIPTION                = "Embedded low rate science data from
+        seven segments."
+  END_OBJECT                   = COLUMN
+
+END_OBJECT                     = LINE_HEADER_TABLE_STRUCTURE
+
+END
+END_OBJECT
+OBJECT                           = IMAGE
+ ENCODING_TYPE                   = HUFFMAN_FIRST_DIFFERENCE
+ LINES                           = 1056
+ LINE_SAMPLES                    = 1204
+ SAMPLE_TYPE                     = UNSIGNED_INTEGER
+ SAMPLE_BITS                     = 8
+ SAMPLE_BIT_MASK                 = 2#11111110#
+ CHECKSUM                        = 157067616
+END_OBJECT
+END
diff --git a/tests/pytests/data/f704b28/naif0012.tls b/tests/pytests/data/f704b28/naif0012.tls
new file mode 100644
index 0000000..e1afdee
--- /dev/null
+++ b/tests/pytests/data/f704b28/naif0012.tls
@@ -0,0 +1,152 @@
+KPL/LSK
+
+
+LEAPSECONDS KERNEL FILE
+===========================================================================
+
+Modifications:
+--------------
+
+2016, Jul. 14   NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2016.
+
+2015, Jan. 5    NJB  Modified file to account for the leapsecond that
+                     will occur on June 30, 2015.
+
+2012, Jan. 5    NJB  Modified file to account for the leapsecond that
+                     will occur on June 30, 2012.
+                     
+2008, Jul. 7    NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2008.
+                     
+2005, Aug. 3    NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2005.
+                     
+1998, Jul  17   WLT  Modified file to account for the leapsecond that
+                     will occur on December 31, 1998.
+                     
+1997, Feb  22   WLT  Modified file to account for the leapsecond that
+                     will occur on June 30, 1997.
+                     
+1995, Dec  14   KSZ  Corrected date of last leapsecond from 1-1-95
+                     to 1-1-96.
+
+1995, Oct  25   WLT  Modified file to account for the leapsecond that
+                     will occur on Dec 31, 1995.
+
+1994, Jun  16   WLT  Modified file to account for the leapsecond on
+                     June 30, 1994.
+
+1993, Feb. 22  CHA   Modified file to account for the leapsecond on
+                     June 30, 1993.
+
+1992, Mar. 6   HAN   Modified file to account for the leapsecond on
+                     June 30, 1992.
+
+1990, Oct. 8   HAN   Modified file to account for the leapsecond on 
+                     Dec. 31, 1990.  
+
+
+Explanation:
+------------
+
+The contents of this file are used by the routine DELTET to compute the 
+time difference
+
+[1]       DELTA_ET  =  ET - UTC                                         
+          
+the increment to be applied to UTC to give ET. 
+
+The difference between UTC and TAI,
+
+[2]       DELTA_AT  =  TAI - UTC
+
+is always an integral number of seconds. The value of DELTA_AT was 10
+seconds in January 1972, and increases by one each time a leap second
+is declared. Combining [1] and [2] gives
+
+[3]       DELTA_ET  =  ET - (TAI - DELTA_AT)
+
+                    =  (ET - TAI) + DELTA_AT
+
+The difference (ET - TAI) is periodic, and is given by
+
+[4]       ET - TAI  =  DELTA_T_A  + K sin E 
+
+where DELTA_T_A and K are constant, and E is the eccentric anomaly of the 
+heliocentric orbit of the Earth-Moon barycenter. Equation [4], which ignores 
+small-period fluctuations, is accurate to about 0.000030 seconds.
+
+The eccentric anomaly E is given by 
+
+[5]       E = M + EB sin M
+
+where M is the mean anomaly, which in turn is given by 
+
+[6]       M = M  +  M t
+               0     1
+
+where t is the number of ephemeris seconds past J2000.
+
+Thus, in order to compute DELTA_ET, the following items are necessary.
+
+          DELTA_TA
+          K
+          EB
+          M0
+          M1
+          DELTA_AT      after each leap second.
+
+The numbers, and the formulation, are taken from the following sources.
+
+     1) Moyer, T.D., Transformation from Proper Time on Earth to 
+        Coordinate Time in Solar System Barycentric Space-Time Frame
+        of Reference, Parts 1 and 2, Celestial Mechanics 23 (1981),
+        33-56 and 57-68.
+
+     2) Moyer, T.D., Effects of Conversion to the J2000 Astronomical
+        Reference System on Algorithms for Computing Time Differences
+        and Clock Rates, JPL IOM 314.5--942, 1 October 1985.
+
+The variable names used above are consistent with those used in the 
+Astronomical Almanac.
+
+\begindata
+
+DELTET/DELTA_T_A       =   32.184
+DELTET/K               =    1.657D-3
+DELTET/EB              =    1.671D-2
+DELTET/M               = (  6.239996D0   1.99096871D-7 )
+
+DELTET/DELTA_AT        = ( 10,   @1972-JAN-1
+                           11,   @1972-JUL-1     
+                           12,   @1973-JAN-1     
+                           13,   @1974-JAN-1     
+                           14,   @1975-JAN-1          
+                           15,   @1976-JAN-1          
+                           16,   @1977-JAN-1          
+                           17,   @1978-JAN-1          
+                           18,   @1979-JAN-1          
+                           19,   @1980-JAN-1          
+                           20,   @1981-JUL-1          
+                           21,   @1982-JUL-1          
+                           22,   @1983-JUL-1          
+                           23,   @1985-JUL-1          
+                           24,   @1988-JAN-1 
+                           25,   @1990-JAN-1
+                           26,   @1991-JAN-1 
+                           27,   @1992-JUL-1
+                           28,   @1993-JUL-1
+                           29,   @1994-JUL-1
+                           30,   @1996-JAN-1 
+                           31,   @1997-JUL-1
+                           32,   @1999-JAN-1
+                           33,   @2006-JAN-1
+                           34,   @2009-JAN-1
+                           35,   @2012-JUL-1
+                           36,   @2015-JUL-1 
+                           37,   @2017-JAN-1 )
+
+\begintext
+
+
diff --git a/tests/pytests/data/f704b28/pck00009.tpc b/tests/pytests/data/f704b28/pck00009.tpc
new file mode 100644
index 0000000..bfadaab
--- /dev/null
+++ b/tests/pytests/data/f704b28/pck00009.tpc
@@ -0,0 +1,3639 @@
+KPL/PCK
+ 
+
+P_constants (PcK) SPICE kernel file
+===========================================================================
+
+        By: Nat Bachman (NAIF)    2010 March 3
+ 
+ 
+Purpose
+--------------------------------------------------------
+
+     This file makes available for use in SPICE-based application
+     software orientation and size/shape data for natural bodies. The
+     principal source of the data is a published report by the IAU/IAG
+     Working Group on Cartographic Coordinates and Rotational Elements [1].
+
+     Orientation and size/shape data not provided by this file may be
+     available in mission-specific PCK files. Such PCKs may be the preferred
+     data source for mission-related applications. Mission-specific PCKs can
+     be found in PDS archives or on the NAIF web site at URL:
+
+        http://naif.jpl.nasa.gov
+
+
+File Organization
+--------------------------------------------------------
+ 
+     The contents of this file are as follows.
+ 
+     Introductory Information:
+
+         --   Purpose
+
+         --   File Organization
+ 
+         --   Version description
+ 
+         --   Disclaimer
+ 
+         --   Sources
+ 
+         --   Explanatory notes
+ 
+         --   Body numbers and names
+ 
+
+     PcK Data:
+ 
+
+        Orientation Data
+        ----------------
+
+         --   Orientation constants for the Sun and planets.        
+              Additional items included in this section:
+
+                 - Earth north geomagnetic centered dipole values
+                   for epochs 1945-2000
+
+                 - Mars prime meridian offset "lambda_a"
+
+         --   Orientation constants for satellites
+ 
+         --   Orientation constants for asteroids Eros, Gaspra, Ida,
+              Itokawa, and Vesta
+ 
+         --   Orientation constants for comets 19P/Borrelly
+              and 9P/Tempel 1
+
+
+        Radii of Bodies
+        ---------------
+
+         --   Radii of Sun and planets
+         
+         --   Radii of satellites, where available
+         
+         --   Radii of asteroids Ceres, Eros, Gaspra, Ida, Itokawa,
+              Mathilde, Toutatis, and Vesta.
+            
+         --   Radii of comets 19P/Borrelly, Halley, 9P/Tempel 1,
+              and 81P/Wild 2
+
+
+
+Version Description
+--------------------------------------------------------
+ 
+     This file was created on March 3, 2010. This version
+     incorporates data from reference [1].
+ 
+     This file contains size, shape, and orientation data for all
+     objects described by the previous version of the file, except
+     for Kleopatra: a shape model for this body is not provided in [1]
+     because, according to this source, it had been "modeled from
+     low resolution radar data, and cannot be mapped from those
+     data."
+
+     New objects covered by this file but not the previous
+     version are:
+        
+        19P/Borrelly
+        Halley
+        9P/Tempel 1
+        81P/Wild 2
+        Ceres
+        Itokawa
+        Mathilde
+        Toutatis
+                         
+ 
+Disclaimer
+--------------------------------------------------------
+ 
+Applicability of Data
+
+     This P_constants file may not contain the parameter values that
+     you prefer. NAIF suggests that you inspect this file visually
+     before proceeding with any critical or extended data processing.
+
+File Modifications by Users
+
+     Note that this file may be readily modified by you to change
+     values or add/delete parameters. NAIF requests that you update the
+     "by line," date, and version description section if you modify
+     this file.
+     
+Known Limitations and Caveats
+
+     Accuracy
+     --------
+
+     In general, the orientation models given here are claimed by the
+     IAU/IAG Working Group Report [1] to be accurate to 0.1 degree
+     ([1], p.158). However, NAIF notes that orientation models for
+     natural satellites and asteroids have in some cases changed
+     substantially with the availability of new observational data, so
+     users are urged to investigate the suitability for their
+     applications of the models presented here.
+
+     Earth orientation
+     -----------------
+
+     NAIF strongly cautions against using the earth rotation model
+     (from [1]) for work demanding high accuracy. This model has been
+     determined by NAIF to have an error in the prime meridian location
+     of magnitude at least 150 arcseconds, with a local minimum
+     occurring during the year 1999. Regarding availability of better
+     earth orientation data for use with the SPICE system:
+
+        Earth orientation data are available from NAIF in the form of
+        binary earth PCK files. NAIF employs an automated process to
+        create these files; each time JPL's Tracking Systems and
+        Applications Section produces a new earth orientation parameter
+        (EOP) file, a new PCK is produced. These PCKs cover a roughly
+        10 year time span starting at Jan. 1, 2000. In these PCK files,
+        the following effects are accounted for in modeling the earth's
+        rotation:
+
+           - Precession:                   1976 IAU model
+
+           - Nutation:                     1980 IAU model, plus interpolated
+                                           EOP nutation corrections
+
+           - Polar motion:                 interpolated from EOP file
+
+           - True sidereal time:
+
+                  UT1 - UT1R (if needed):  given by analytic formula
+                + TAI - UT1 (or UT1R):     interpolated from EOP file
+                + UT1 - GMST:              given by analytic formula
+                + equation of equinoxes:   given by analytic formula
+
+             where
+
+                TAI    =   International Atomic Time
+                UT1    =   Greenwich hour angle of computed mean sun - 12h
+                UT1R   =   Regularized UT1
+                GMST   =   Greenwich mean sidereal time                   
+
+        These kernels are available from the NAIF web site
+
+           http://naif.jpl.nasa.gov
+
+        (follow the links to Data, generic_kernels, and PCK data) or
+
+           ftp://naif.jpl.nasa.gov/pub/naif/generic_kernels/pck
+
+        or via anonymous ftp from the server
+ 
+           naif.jpl.nasa.gov
+
+        The kernels are in the path
+
+           pub/naif/generic_kernels/pck
+
+        At this time, these kernels have file names of the form
+
+           earth_000101_yymmdd_yymmdd.bpc
+
+        The second and third dates are, respectively, the file's 
+        coverage end time and the epoch of the last datum.
+ 
+        These binary PCK files are very accurate (error < 0.1
+        microradian) for epochs preceding the epoch of the last datum.
+        For later epochs, the error rises to several microradians.
+
+        Binary PCK files giving accurate earth orientation from 1972 to
+        2007 and *low accuracy* predicted earth orientation from
+        2007 to 2037 are also available in the same location. See the
+        aareadme.txt file at the "pck" URL above for details.
+
+        Characteristics and names of the binary kernels described here
+        are subject to change. See the "pck" URL above for information
+        on current binary earth PCKs.
+
+
+     Lunar orientation
+     -----------------
+
+     The lunar orientation formula provided by this file is a
+     trigonometric polynomial approximation yielding the orientation of
+     the lunar "Mean Earth/Polar Axis" (ME) reference frame. A more
+     accurate approximation can be obtained by using both the NAIF
+     lunar frame kernel and the binary lunar orientation PCK file,
+     which are available on the NAIF web site (see URLS above)
+     and in the NAIF server's ftp area. The lunar frame kernel
+     is located in the path
+
+        pub/naif/generic_kernels/fk/satellites
+
+     and has a name of the form
+
+        moon_yymmdd.tf
+
+     The binary lunar PCK is in the path
+
+        pub/naif/generic_kernels/pck
+
+     and has a name of the form
+
+        moon_pa_dennn_yyyy-yyyy.bpc
+
+     See the "aareadme.txt" files in the paths shown above for details
+     on file contents and versions. We also suggest you refer to the
+     SPICE tutorial named "lunar_earth_pck-fk," which is available from
+     the NAIF web site.
+
+
+     Earth geomagnetic dipole
+     ------------------------
+
+     The SPICE Toolkit doesn't currently contain software to model the
+     earth's north geomagnetic centered dipole as a function of time.
+     As a convenience for users, the north dipole location from the
+     J2000 epoch was selected as a representative datum, and the
+     planetocentric longitude and latitude of this location have been
+     associated with the keywords
+       
+        BODY399_N_GEOMAG_CTR_DIPOLE_LON
+        BODY399_N_GEOMAG_CTR_DIPOLE_LAT
+     
+     Values for the earth's north geomagnetic centered dipole are
+     presented in comments as a discrete time series for the time range
+     1945-2000. For details concerning the geomagnetic field model from
+     which these values were derived, including a discussion of the
+     model's accuracy, see [9].
+ 
+
+     Mars prime meridian offset
+     --------------------------
+
+     The Mars prime meridian offset given by [5] is not used by
+     SPICE geometry software for computations involving the shape
+     of Mars (for example, in sub-observer point or surface intercept
+     computations). The value is provided for informational
+     purposes only.
+
+
+     Software limitations
+     --------------------
+
+     SPICE Toolkits prior to version N0057 cannot make use of
+     trigonometric polynomial terms in the formulas for orientation of
+     the planets. The only planets for which such terms are used are
+     Jupiter and Neptune. Use of trigonometric polynomial terms for
+     natural satellites is and has been supported for all SPICE Toolkit
+     versions.
+ 
+     The second nutation precession angle (M2) for Mars is represented
+     by a quadratic polynomial in the 2006 IAU report. The SPICELIB
+     subroutine BODEUL can not handle this term (which is extremely
+     small), so we truncate the polynomial to a linear one. The 
+     resulting orientation error has a maximum magnitude of less
+     than 0.0032 degrees over the time span 1996-2015 and less than
+     0.0082 degrees over the time span 1986-2025.
+
+
+Sources
+--------------------------------------------------------
+ 
+     The sources for the constants listed in this file are:
+
+
+        [1]   Seidelmann, P.K., Archinal, B.A., A'Hearn, M.F., 
+              Conrad, A., Consolmagno, G.J., Hestroffer, D.,
+              Hilton, J.L., Krasinsky, G.A., Neumann, G.,
+              Oberst, J., Stooke, P., Tedesco, E.F., Tholen, D.J., 
+              and Thomas, P.C. "Report of the IAU/IAG Working Group 
+              on cartographic coordinates and rotational elements: 2006."
+
+        [2]   Seidelmann, P.K., Archinal, B.A., A'Hearn, M.F., 
+              Cruikshank, D.P., Hilton, J.L., Keller, H.U., Oberst, J.,
+              Simon, J.L., Stooke, P., Tholen, D.J., and Thomas, P.C.
+              "Report of the IAU/IAG Working Group on Cartographic
+              Coordinates and Rotational Elements of the Planets and
+              Satellites: 2003."
+ 
+        [3]   Nautical Almanac Office, United States Naval Observatory
+              and H.M. Nautical Almanac Office, Rutherford Appleton
+              Laboratory (2010). "The Astronomical Almanac for
+              the Year 2010," U.S. Government Printing Office,
+              Washington, D.C.: and The Stationary Office, London.
+
+        [4]   Nautical Almanac Office, United States Naval Observatory,
+              H.M. Nautical Almanac Office, Royal Greenwich
+              Observatory, Jet Propulsion Laboratory, Bureau des
+              Longitudes, and The Time Service and Astronomy
+              Departments, United States Naval Observatory (1992).
+              "Explanatory Supplement to the Astronomical Almanac," P.
+              Kenneth Seidelmann, ed. University Science Books, 20
+              Edgehill Road, Mill Valley, CA 9494.
+
+        [5]   Duxbury, Thomas C. (2001). "IAU/IAG 2000 Mars Cartographic
+              Conventions,"  presentation to the Mars Express Data
+              Archive Working Group, Dec. 14, 2001.
+
+        [6]   Russell, C.T. and Luhmann, J.G. (1990). "Earth: Magnetic 
+              Field and Magnetosphere." <http://www-ssc.igpp.ucla.
+              edu/personnel/russell/papers/earth_mag>. Originally
+              published in "Encyclopedia of Planetary Sciences," J.H.
+              Shirley and R.W. Fainbridge, eds. Chapman and Hall,
+              New York, pp 208-211.
+
+        [7]   Russell, C.T. (1971). "Geophysical Coordinate 
+              Transformations," Cosmic Electrodynamics 2  184-186.
+              NAIF document 181.0.
+     
+        [8]   ESA/ESTEC Space Environment Information System (SPENVIS)
+              (2003). Web page:  "Dipole approximations of the
+              geomagnetic field."  <http://www.spenvis.oma.be/spenvis/
+              help/background/magfield/cd.html>.
+ 
+        [9]   International Association of Geomagnetism and Aeronomy
+              and International Union of Geodesy and Geophysics (2004).
+              Web page:  "The 9th Generation International Geomagnetic
+              Reference Field." <http://www.ngdc.noaa.gov/
+              IAGA/vmod/igrf.html>.
+                             
+        [10]  Davies, M.E., Abalakin, V.K., Bursa, M., Hunt, G.E.,
+              and Lieske, J.H. (1989). "Report of the IAU/IAG/COSPAR
+              Working Group on Cartographic Coordinates and Rotational
+              Elements of the Planets and Satellites: 1988," Celestial
+              Mechanics and Dynamical Astronomy, v.46, no.2, pp.
+              187-204.
+
+         
+     Most values are from [1]. All exceptions are 
+     commented where they occur in this file. The exceptions are:
+ 
+                 
+         --   Radii for the Sun are from [3].
+             
+         --   The second nutation precession angle (M2) for Mars is
+              represented by a quadratic polynomial in the 2000
+              IAU report. The SPICELIB subroutine BODEUL can not
+              handle this term (which is extremely small), so we
+              truncate the polynomial to a linear one.
+           
+          --  Earth north geomagnetic centered dipole values are from
+              [8]. The article [6] was used to check most of 
+              these values, and the values were also re-computed from 
+              the 9th generation IGRF [9] by Nat Bachman.
+         
+          -- The Mars prime meridian offset angle is from [5].
+
+
+     "Old values" listed are from the SPICE P_constants file
+     pck00008.tpc dated September 21, 2004. Most of these values came
+     from the 2003 IAU report [2].
+ 
+ 
+ 
+ 
+Explanatory Notes
+--------------------------------------------------------
+
+     This file, which is logically part of the SPICE P-kernel, contains
+     constants used to model the orientation, size and shape of the
+     Sun, planets, natural satellites, and selected comets and
+     asteroids. The orientation models express the direction of the
+     pole and location of the prime meridian of a body as a function of
+     time. The size/shape models ("shape models" for short) represent
+     all bodies as ellipsoids, using two equatorial radii and a polar
+     radius. Spheroids and spheres are obtained when two or all three
+     radii are equal.
+
+     The SPICE Toolkit routines that use this file are documented in
+     the SPICE "Required Reading" file pck.req. They are also 
+     documented in the "PCK" SPICE tutorial, which is available on
+     the NAIF web site.
+
+File Format
+        
+     A terse description of the PCK file format is given here. See the
+     SPICE "Required Reading" files pck.req and kernel.req for a
+     detailed explanation of the SPICE text kernel file format. The
+     files pck.req and kernel.req are included in the documentation
+     provided with the SPICE Toolkit.
+
+     The file starts out with the ``ID word'' string
+
+        KPL/PCK
+
+     This string identifies the file as a text kernel containing PCK 
+     data.
+
+     This file consists of a series of comment blocks and data blocks.
+     Comment blocks, which contain free-form descriptive or explanatory
+     text, are preceded by a \begintext token. Data blocks follow a
+     \begindata token. In order to be recognized, each of these tokens
+     must be placed on a line by itself.
+
+     The portion of the file preceding the first data block is treated
+     as a comment block; it doesn't require an initial \begintext
+     token.
+
+     This file identifies data using a series of
+
+        KEYWORD = VALUE
+
+     assignments. The left hand side of each assignment is a
+     "kernel variable" name; the right hand side is an associated value
+     or list of values. The SPICE subroutine API allows SPICE routines
+     and user applications to retrieve the set of values associated
+     with each kernel variable name.
+
+     Kernel variable names are case-sensitive and are limited to
+     32 characters in length. 
+
+     Numeric values may be integer or floating point. String values
+     are normally limited to 80 characters in length; however, SPICE
+     provides a mechanism for identifying longer, "continued" strings.
+     See the SPICE routine STPOOL for details.
+
+     String values are single quoted.
+
+     When the right hand side of an assignment is a list of values,
+     the list items may be separated by commas or simply by blanks.
+     The list must be bracketed by parentheses. Example:
+
+        BODY399_RADII = ( 6378.14 6378.14 6356.75 )
+ 
+     Any blanks preceding or following keyword names, values and equal
+     signs are ignored.
+  
+     Assignments may be spread over multiple lines, for example:
+
+        BODY399_RADII = ( 6378.14 
+                          6378.14 
+                          6356.75 )
+
+     This file may contain blank lines anywhere. Non-printing
+     characters including TAB should not be present in the file: the
+     presence of such characters may cause formatting errors when the
+     file is viewed.
+
+Time systems and reference frames
+
+     The 2006 IAU/IAG Working Group Report [1] states the time scale
+     used as the independent variable for the rotation formulas is
+     Barycentric Dynamical Time (TDB) and that the epoch of variable
+     quantities is J2000 TDB (2000 Jan 1 12:00 TDB). Throughout SPICE
+     documentation and in this file, we use the names "J2000 TDB" and
+     "J2000" for this epoch. The name "J2000.0" is equivalent.
+
+     SPICE documentation refers to the time system used in this file 
+     as either "ET" or "TDB." SPICE software makes no distinction 
+     between TDB and the time system associated with the independent
+     variable of the JPL planetary ephemerides T_eph.
+ 
+     The inertial reference frame used for the rotational elements in
+     this file is identified by [1] as the ICRF (International
+     Celestial Reference Frame). 
+
+     The SPICE PCK software that reads this file uses the label "J2000"
+     to refer to the ICRF; this is actually a mislabeling which has
+     been retained in the interest of backward compatibility. Using
+     data from this file, by means of calls to the SPICE frame
+     transformation routines, will actually compute orientation
+     relative to the ICRF.
+
+     The difference between the J2000 frame and the ICRF is
+     on the order of tens of milliarcseconds and is well below the
+     accuracy level of the formulas in this file.
+
+Orientation models
+ 
+     All of the orientation models use three Euler angles to describe
+     the orientation of the coordinate axes of the "Body Equator and
+     Prime Meridian" system with respect to an inertial system. By
+     default, the inertial system is the ICRF (labeled as "J2000"), but
+     other frames can be specified in the file. See the PCK Required
+     Reading for details.
+ 
+     The first two angles, in order, are the ICRF right ascension and
+     declination (henceforth RA and DEC) of the north pole of a body as
+     a function of time. The third angle is the prime meridian location
+     (represented by "W"), which is expressed as a rotation about the
+     north pole, and is also a function of time.
+ 
+     For each body, the expressions for the north pole's right
+     ascension and declination, as well as prime meridian location, are
+     sums (as far as the models that appear in this file are concerned)
+     of quadratic polynomials and trigonometric polynomials, where the
+     independent variable is time.
+ 
+     In this file, the time arguments in expressions always refer to
+     Barycentric Dynamical Time (TDB), measured in centuries or days
+     past a reference epoch. By default, the reference epoch is the
+     J2000 epoch, which is Julian ephemeris date 2451545.0, but other
+     epochs can be specified in the file. See the PCK Required Reading
+     for details.
+
+     Orientation models for satellites and some planets (including
+     Jupiter) involve both polynomial terms and trigonometric terms.
+     The arguments of the trigonometric terms are linear polynomials.
+     In this file, we call the arguments of these trigonometric terms
+     "nutation precession angles."
+
+     Example: 2006 IAU Model for orientation of Jupiter.  Note that 
+     these values are used as an example only; see the data area below 
+     for current values.
+
+        Right ascension
+        ---------------
+ 
+        alpha   =  268.056595 - 0.006499 T        +  0.000117 sin(Ja) 
+             0                + 0.000938 sin(Jb)  +  0.001432 sin(Jc)
+                              + 0.000030 sin(Jd)  +  0.002150 sin(Je)
+
+        Declination
+        -----------
+ 
+        delta   =   64.495303 + 0.002413 T        +  0.000050 cos(Ja)
+             0                + 0.000404 cos(Jb)  +  0.000617 cos(Jc)
+                              - 0.000013 cos(Jd)  +  0.000926 cos(Je)
+
+        Prime meridian
+        --------------
+
+        W       =  284.95  + 870.5366420 d
+ 
+
+     Here
+
+        T represents centuries past J2000 ( TDB ),
+ 
+        d represents days past J2000 ( TDB ).
+
+        Ja-Je are nutation precession angles.
+
+     In this file, the polynomials' coefficients above are assigned 
+     to kernel variable names (left-hand-side symbols) as follows
+
+        BODY599_POLE_RA        = (   268.056595     -0.006499       0. )
+        BODY599_POLE_DEC       = (    64.495303      0.002413       0. )
+        BODY599_PM             = (   284.95        870.5366420      0. )
+
+     and the trigonometric polynomials' coefficients are assigned 
+     as follows
+
+        BODY599_NUT_PREC_RA  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000117
+                                                                0.000938
+                                                                0.001432
+                                                                0.000030
+                                                                0.002150 )
+
+        BODY599_NUT_PREC_DEC = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000050
+                                                                0.000404
+                                                                0.000617
+                                                               -0.000013
+                                                                0.000926 )
+
+        BODY599_NUT_PREC_PM  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0  ) 
+
+     Note the number "599"; this is the NAIF ID code for Jupiter.
+
+     In this file, the polynomial expressions for the nutation
+     precession angles are listed along with the planet's RA, DEC, and
+     prime meridian terms. Below are the 2006 IAU nutation precession
+     angles for the Jupiter system.
+
+        J1  =   73.32      +  91472.9 T
+        J2  =   24.62      +  45137.2 T
+        J3  =  283.90      +   4850.7 T
+        J4  =  355.80      +   1191.3 T
+        J5  =  119.90      +    262.1 T
+        J6  =  229.80      +     64.3 T
+        J7  =  352.25      +   2382.6 T
+        J8  =  113.35      +   6070.0 T
+
+        J9  =  146.64      + 182945.8 T
+        J10 =   49.24      +  90274.4 T 
+
+        Ja  =   99.360714  +   4850.4046 T
+        Jb  =  175.895369  +   1191.9605 T
+        Jc  =  300.323162  +    262.5475 T
+        Jd  =  114.012305  +   6070.2476 T
+        Je  =   49.511251  +     64.3000 T
+
+     Here
+
+        T represents centuries past J2000 ( TDB )
+
+        J1-J10 and Ja-Je are the nutation precession angles. The angles
+        J9 and J10 are equal to 2*J1 and 2*J2, respectively.
+ 
+        Angles J9 and J10 are not present in [1]; they have been added
+        to fit the terms 2*J1 and 2*J2, which appear in the orientation
+        models of several satellites, into a form that can be accepted
+        by the PCK system.
+
+     The assignment of the nutation precession angles for the
+     Jupiter system is as follows:
+ 
+        BODY5_NUT_PREC_ANGLES  = (    73.32      91472.9
+                                      24.62      45137.2
+                                     283.90       4850.7
+                                     355.80       1191.3
+                                     119.90        262.1
+                                     229.80         64.3
+                                     352.25       2382.6
+                                     113.35       6070.0   
+                                     146.64     182945.8
+                                      49.24      90274.4  
+                                      99.360714   4850.4046
+                                     175.895369   1191.9605
+                                     300.323162    262.5475
+                                     114.012305   6070.2476
+                                      49.511251     64.3000  )
+
+     You'll see an additional symbol grouped with the ones listed
+     above; it is
+ 
+        BODY599_LONG_AXIS
+ 
+     This term is zero for all bodies except Mars. It represents the
+     angular offset between the meridian containing the longest axis of
+     the triaxial ellipsoid used to model a body's surface and the
+     prime meridian of the body.
+
+     The pattern of the formulas for satellite orientation is similar
+     to that for Jupiter. Example: 2006 IAU values for Io. Again, these
+     values are used as an example only; see the data area below for
+     current values.
+ 
+        Right ascension
+        ---------------
+
+        alpha  = 268.05  -  0.009 T  + 0.094 sin(J3)  +  0.024 sin(J4)
+             0  
+
+        Declination
+        -----------
+
+        delta  =  64.50  +  0.003 T  + 0.040 cos(J3)  +  0.011 cos(J4)
+             0           
+                          
+        Prime meridian
+        --------------
+
+        W      = 200.39  +  203.4889538 d  -  0.085 sin(J3)  -  0.022 sin(J4)
+
+ 
+        d represents days past J2000.
+ 
+        J3 and J4 are nutation precession angles.
+ 
+     The polynomial terms are assigned to symbols by the statements
+ 
+        BODY501_POLE_RA       = (  268.05          -0.009      0. )
+        BODY501_POLE_DEC      = (   64.50           0.003      0. )
+        BODY501_PM            = (  200.39         203.4889538  0. )
+ 
+     The coefficients of the trigonometric terms are assigned to symbols by
+     the statements
+
+        BODY501_NUT_PREC_RA   = (    0.   0.     0.094    0.024   )
+        BODY501_NUT_PREC_DEC  = (    0.   0.     0.040    0.011   )
+        BODY501_NUT_PREC_PM   = (    0.   0.    -0.085   -0.022   )
+
+     501 is the NAIF ID code for Io.
+ 
+     SPICE software expects the models for satellite orientation to
+     follow the form of the model shown here: the polynomial portions of the
+     RA, DEC, and W expressions are expected to be quadratic, the 
+     trigonometric terms for RA and W (satellite prime meridian) are expected 
+     to be linear combinations of sines of nutation precession angles, the 
+     trigonometric terms for DEC are expected to be linear combinations of 
+     cosines of nutation precession angles, and the polynomials for the 
+     nutation precession angles themselves are expected to be linear.
+ 
+     Eventually, the software will handle more complex expressions, we
+     expect.
+ 
+ 
+Shape models
+ 
+     There is only one kind of shape model supported by the SPICE Toolkit
+     software at present: the triaxial ellipsoid. The 2006 IAU report does
+     not use any other models, except in the case of Mars, where 
+     separate values are given for the north and south polar radii.
+ 
+     For each body, three radii are listed:  The first number is
+     the largest equatorial radius (the length of the semi-axis
+     containing the prime meridian), the second number is the smaller
+     equatorial radius, and the third is the polar radius.
+ 
+     Example: Radii of the Earth.
+ 
+        BODY399_RADII     = (     6378.14    6378.14      6356.75   )
+ 
+ 
+Body Numbers and Names
+--------------------------------------------------------
+ 
+ 
+        1  Mercury barycenter
+        2  Venus barycenter
+        3  Earth barycenter
+        4  Mars barycenter
+        5  Jupiter barycenter
+        6  Saturn barycenter
+        7  Uranus barycenter
+        8  Neptune barycenter
+        9  Pluto barycenter
+        10 Sun
+
+ 
+        199 Mercury
+ 
+ 
+        299 Venus
+ 
+ 
+        399 Earth
+ 
+        301 Moon
+ 
+ 
+        499 Mars
+ 
+        401 Phobos      402 Deimos
+ 
+ 
+        599 Jupiter
+ 
+        501 Io          502 Europa      503 Ganymede    504 Callisto
+        505 Amalthea    506 Himalia     507 Elara       508 Pasiphae
+        509 Sinope      510 Lysithea    511 Carme       512 Ananke
+        513 Leda        514 Thebe       515 Adrastea    516 Metis
+ 
+ 
+        699 Saturn
+ 
+        601 Mimas       602 Enceladus   603 Tethys      604 Dione
+        605 Rhea        606 Titan       607 Hyperion    608 Iapetus
+        609 Phoebe      610 Janus       611 Epimetheus  612 Helene
+        613 Telesto     614 Calypso     615 Atlas       616 Prometheus
+        617 Pandora     618 Pan
+ 
+ 
+        799 Uranus
+ 
+        701 Ariel       702 Umbriel     703 Titania     704 Oberon
+        705 Miranda     706 Cordelia    707 Ophelia     708 Bianca
+        709 Cressida    710 Desdemona   711 Juliet      712 Portia
+        713 Rosalind    714 Belinda     715 Puck
+ 
+ 
+        899 Neptune
+ 
+        801 Triton      802 Nereid      803 Naiad       804 Thalassa
+        805 Despina     806 Galatea     807 Larissa     808 Proteus
+ 
+ 
+        999 Pluto
+ 
+        901 Charon
+ 
+ 
+        1000005 Comet 19P/Borrelly
+        1000036 Comet Halley
+        1000093 Comet 9P/Tempel 1
+        1000107 Comet 81P/Wild 2
+
+        2000001 Asteroid Ceres
+        2000004 Asteroid Vesta
+        2000216 Asteroid Kleopatra
+        2000253 Asteroid Mathilde
+        2000433 Asteroid Eros
+        2004179 Asteroid Toutatis
+        2025143 Asteroid Itokawa
+        2431010 Asteroid Ida
+        9511010 Asteroid Gaspra
+        
+ 
+Orientation Constants for the Sun and Planets
+--------------------------------------------------------
+ 
+ 
+Sun
+ 
+     Old values:
+
+        Values are from the 2003 IAU report.
+
+  
+        body10_pole_ra         = (  286.13       0.          0. )
+        body10_pole_dec        = (   63.87       0.          0. )
+        body10_pm              = (   84.10      14.18440     0. )
+        body10_long_axis       = (    0.                        )
+
+     Current values:
+ 
+        \begindata
+ 
+        BODY10_POLE_RA         = (  286.13       0.          0. )
+        BODY10_POLE_DEC        = (   63.87       0.          0. )
+        BODY10_PM              = (   84.176     14.18440     0. )
+        BODY10_LONG_AXIS       = (    0.                        )
+
+        \begintext
+ 
+Mercury
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+
+
+     Current values:
+  
+        \begindata
+
+        BODY199_POLE_RA          = (  281.01     -0.033      0. )
+        BODY199_POLE_DEC         = (   61.45     -0.005      0. )
+        BODY199_PM               = (  329.548     6.1385025  0. )
+ 
+        BODY199_LONG_AXIS        = (    0.                        )
+ 
+        \begintext
+ 
+  
+Venus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY299_POLE_RA          = (  272.76       0.          0. )
+        BODY299_POLE_DEC         = (   67.16       0.          0. )
+        BODY299_PM               = (  160.20      -1.4813688   0. )
+ 
+        BODY299_LONG_AXIS        = (    0.                        )
+ 
+        \begintext
+
+
+Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 report.
+ 
+ 
+     Current values:
+ 
+        \begindata 
+ 
+        BODY399_POLE_RA        = (    0.      -0.641         0. )
+        BODY399_POLE_DEC       = (   90.      -0.557         0. )
+        BODY399_PM             = (  190.147  360.9856235     0. )
+        BODY399_LONG_AXIS      = (    0.                        )
+
+        \begintext
+
+
+        Nutation precession angles for the Earth-Moon system:
+
+           The linear coefficients have been scaled up from degrees/day
+           to degrees/century, because the SPICELIB PCK reader expects
+           these units.  The original constants were:
+        
+                                    125.045D0   -0.0529921D0
+                                    250.089D0   -0.1059842D0
+                                    260.008D0   13.0120009D0
+                                    176.625D0   13.3407154D0
+                                    357.529D0    0.9856003D0
+                                    311.589D0   26.4057084D0
+                                    134.963D0   13.0649930D0
+                                    276.617D0    0.3287146D0
+                                     34.226D0    1.7484877D0
+                                     15.134D0   -0.1589763D0
+                                    119.743D0    0.0036096D0
+                                    239.961D0    0.1643573D0
+                                     25.053D0   12.9590088D0 
+
+
+        \begindata
+
+       
+        BODY3_NUT_PREC_ANGLES  = (  125.045         -1935.5364525000
+                                    250.089         -3871.0729050000
+                                    260.008        475263.3328725000  
+                                    176.625        487269.6299850000
+                                    357.529         35999.0509575000
+                                    311.589        964468.4993100000
+                                    134.963        477198.8693250000
+                                    276.617         12006.3007650000
+                                     34.226         63863.5132425000 
+                                     15.134         -5806.6093575000
+                                    119.743           131.8406400000
+                                    239.961          6003.1503825000 
+                                     25.053        473327.7964200000 )
+
+
+        \begintext
+ 
+
+     Earth north geomagnetic centered dipole:
+
+        Old values:
+
+           Values are from [7].  Note the year of publication was 1971.
+
+           body399_mag_north_pole_lon  =  ( -69.761 )
+           body399_mag_north_pole_lat  =  (  78.565 )
+
+
+        Current values:
+
+           The north dipole location is time-varying.  The values shown
+           below, taken from [8], represent a discrete sampling of the
+           north dipole location from 1945 to 2000. The terms DGRF and
+           IGRF refer to, respectively, "Definitive Geomagnetic
+           Reference Field" and "International Geomagnetic Reference
+           Field."  See references [6], [8], and [9] for details.
+
+           Coordinates are planetocentric. 
+
+             Data source    Lat      Lon
+             -----------   -----    ------
+              DGRF 1945    78.47    291.47
+              DGRF 1950    78.47    291.15
+              DGRF 1955    78.46    290.84
+              DGRF 1960    78.51    290.53
+              DGRF 1965    78.53    290.15
+              DGRF 1970    78.59    289.82
+              DGRF 1975    78.69    289.53
+              DGRF 1980    78.81    289.24 
+              DGRF 1985    78.97    289.10
+              DGRF 1990    79.13    288.89
+              IGRF 1995    79.30    288.59
+              IGRF 2000    79.54    288.43      
+
+
+        Values are given for the epoch 2000 and are from the final row
+        of the above table, which is from [8]. As shown by the table
+        these values constitute a low-accuracy approximation for epochs
+        not close to 2000.
+
+        \begindata
+       
+        BODY399_N_GEOMAG_CTR_DIPOLE_LON  =  ( 288.43 )
+        BODY399_N_GEOMAG_CTR_DIPOLE_LAT  =  (  79.54 )
+
+        \begintext
+
+ 
+Mars
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+   
+     Current values:
+ 
+        \begindata
+ 
+        BODY499_POLE_RA          = (  317.68143   -0.1061      0.  )
+        BODY499_POLE_DEC         = (   52.88650   -0.0609      0.  )
+        BODY499_PM               = (  176.630    350.89198226  0.  )
+
+        \begintext
+ 
+        Source [5] specifies the following value for the lambda_a term
+        (BODY499_LONG_AXIS ) for Mars. This term is the POSITIVE EAST
+        LONGITUDE, measured from the prime meridian, of the meridian
+        containing the longest axis of the reference ellipsoid.
+        (CAUTION: previous values were POSITIVE WEST.)
+
+           body499_long_axis        = (  252.  )
+ 
+        We list this lambda_a value for completeness. The IAU report
+        [1] gives equal values for both equatorial radii, so the
+        lambda_a offset does not apply to the IAU model.
+ 
+        The 2003 IAU report defines M2, the second nutation precession angle,
+        by:
+ 
+                                                2
+           192.93  +  1128.4096700 d  +  8.864 T
+ 
+        We truncate the M2 series to a linear expression, because the PCK
+        software cannot handle the quadratic term.
+ 
+        Again, the linear terms are scaled by 36525.0:
+ 
+            -0.4357640000000000       -->     -15916.28010000000
+          1128.409670000000           -->   41215163.19675000
+            -1.8151000000000000E-02   -->       -662.9652750000000
+ 
+        We also introduce a fourth nutation precession angle, which
+        is the pi/2-complement of the third angle.  This angle is used
+        in computing the prime meridian location for Deimos.  See the
+        discussion of this angle below in the section containing orientation
+        constants for Deimos.
+ 
+        \begindata
+
+        BODY4_NUT_PREC_ANGLES  = (  169.51     -15916.2801
+                                    192.93   41215163.19675
+                                     53.47       -662.965275
+                                     36.53        662.965275  )
+ 
+        \begintext
+ 
+ 
+Jupiter
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report.
+
+
+           body599_pole_ra        = (   268.05      -0.009       0. )
+           body599_pole_dec       = (    64.49       0.003       0. )
+           body599_pm             = (   284.95     870.5366420   0. )
+           body599_long_axis      = (     0.                        )
+
+           body5_nut_prec_angles  = (    73.32   91472.9
+                                         24.62   45137.2
+                                        283.90    4850.7
+                                        355.80    1191.3
+                                        119.90     262.1
+                                        229.80      64.3
+                                        352.35    2382.6
+                                        113.35    6070.0   
+                                        146.64  182945.8
+                                         49.24   90274.4  )
+ 
+
+                   
+     Current values:
+ 
+        The number of nutation precession angles is 15. The ninth and
+        tenth are twice the first and second, respectively. The
+        eleventh through fifteenth correspond to angles JA-JE in
+        the 2006 IAU report; angles JA-JE were not used prior to that
+        report.
+
+        \begindata
+ 
+ 
+        BODY599_POLE_RA        = (   268.056595     -0.006499       0. )
+        BODY599_POLE_DEC       = (    64.495303      0.002413       0. )
+        BODY599_PM             = (   284.95        870.5366420      0. )
+        BODY599_LONG_AXIS      = (     0.                        )
+ 
+        BODY599_NUT_PREC_RA  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000117
+                                                                0.000938
+                                                                0.001432
+                                                                0.000030
+                                                                0.002150 )
+
+        BODY599_NUT_PREC_DEC = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000050
+                                                                0.000404
+                                                                0.000617
+                                                               -0.000013
+                                                                0.000926 )
+
+        BODY599_NUT_PREC_PM  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0  ) 
+
+
+        BODY5_NUT_PREC_ANGLES  = (    73.32      91472.9
+                                      24.62      45137.2
+                                     283.90       4850.7
+                                     355.80       1191.3
+                                     119.90        262.1
+                                     229.80         64.3
+                                     352.25       2382.6
+                                     113.35       6070.0   
+                                     146.64     182945.8
+                                      49.24      90274.4  
+                                      99.360714   4850.4046
+                                     175.895369   1191.9605
+                                     300.323162    262.5475
+                                     114.012305   6070.2476
+                                      49.511251     64.3000  )
+        \begintext
+ 
+ 
+Saturn
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+
+     Current values:
+ 
+        \begindata
+
+        BODY699_POLE_RA        = (    40.589    -0.036      0.  )
+        BODY699_POLE_DEC       = (    83.537    -0.004      0.  )
+        BODY699_PM             = (    38.90    810.7939024  0.  )
+        BODY699_LONG_AXIS      = (     0.                       )
+ 
+        \begintext
+ 
+        The first seven angles given here are the angles S1 
+        through S7 from the 2000 report; the eighth and
+        ninth angles are 2*S1 and 2*S2, respectively.
+ 
+ 
+        \begindata
+
+        BODY6_NUT_PREC_ANGLES  = (  353.32   75706.7
+                                     28.72   75706.7  
+                                    177.40  -36505.5 
+                                    300.00   -7225.9 
+                                    316.45     506.2
+                                    345.20   -1016.3  
+                                     29.80     -52.1
+                                    706.64  151413.4
+                                     57.44  151413.4  )
+        \begintext
+ 
+ 
+Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY799_POLE_RA        = (  257.311     0.         0.  )
+        BODY799_POLE_DEC       = (  -15.175     0.         0.  )
+        BODY799_PM             = (  203.81   -501.1600928  0.  )
+        BODY799_LONG_AXIS      = (    0.                       )
+ 
+        \begintext
+        
+        The first 16 angles given here are the angles U1 
+        through U16 from the 2000 report; the 17th and
+        18th angles are 2*U11 and 2*U12, respectively.
+        
+        \begindata
+         
+        BODY7_NUT_PREC_ANGLES  = (  115.75   54991.87
+                                    141.69   41887.66
+                                    135.03   29927.35
+                                     61.77   25733.59  
+                                    249.32   24471.46
+                                     43.86   22278.41 
+                                     77.66   20289.42  
+                                    157.36   16652.76  
+                                    101.81   12872.63   
+                                    138.64    8061.81
+                                    102.23   -2024.22 
+                                    316.41    2863.96  
+                                    304.01     -51.94  
+                                    308.71     -93.17 
+                                    340.82     -75.32 
+                                    259.14    -504.81 
+                                    204.46   -4048.44
+                                    632.82    5727.92     )
+                                    
+        \begintext
+ 
+ 
+ 
+Neptune
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+
+        \begindata        
+ 
+           BODY899_POLE_RA        = (  299.36     0.         0. )
+           BODY899_POLE_DEC       = (   43.46     0.         0. )
+           BODY899_PM             = (  253.18   536.3128492  0. )
+           BODY899_LONG_AXIS      = (    0.                     )
+
+
+           BODY899_NUT_PREC_RA    = (  0.70 0. 0. 0. 0. 0. 0. 0. ) 
+           BODY899_NUT_PREC_DEC   = ( -0.51 0. 0. 0. 0. 0. 0. 0. )
+           BODY899_NUT_PREC_PM    = ( -0.48 0. 0. 0. 0. 0. 0. 0. )
+
+        \begintext
+ 
+           The 2000 report defines the nutation precession angles
+ 
+              N, N1, N2, ... , N7
+ 
+           and also uses the multiples of N1 and N7
+ 
+              2*N1
+ 
+           and
+ 
+              2*N7, 3*N7, ..., 9*N7
+ 
+           In this file, we treat the angles and their multiples as
+           separate angles.  In the kernel variable
+ 
+              BODY8_NUT_PREC_ANGLES
+ 
+           the order of the angles is
+ 
+              N, N1, N2, ... , N7, 2*N1, 2*N7, 3*N7, ..., 9*N7
+ 
+           Each angle is defined by a linear polynomial, so two
+           consecutive array elements are allocated for each
+           angle.  The first term of each pair is the constant term,
+           the second is the linear term.
+ 
+        \begindata 
+
+              BODY8_NUT_PREC_ANGLES = (   357.85         52.316
+                                          323.92      62606.6
+                                          220.51      55064.2 
+                                          354.27      46564.5
+                                           75.31      26109.4 
+                                           35.36      14325.4
+                                          142.61       2824.6  
+                                          177.85         52.316 
+                                          647.840    125213.200
+                                          355.700       104.632
+                                          533.550       156.948
+                                          711.400       209.264
+                                          889.250       261.580
+                                         1067.100       313.896
+                                         1244.950       366.212
+                                         1422.800       418.528
+                                         1600.650       470.844   )
+                                         
+        \begintext
+ 
+ 
+ 
+Pluto
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report. 
+ 
+        BODY999_POLE_RA        = (  313.02    0.         0.   )
+        BODY999_POLE_DEC       = (    9.09    0.         0.   )
+        BODY999_PM             = (  236.77  -56.3623195  0.   )
+        BODY999_LONG_AXIS      = (    0.                      )
+
+
+     Current values:
+ 
+        \begindata
+ 
+        BODY999_POLE_RA        = (  312.993   0.          0. )
+        BODY999_POLE_DEC       = (    6.163   0.          0. )
+        BODY999_PM             = (  237.305  -56.3625225  0. )
+        BODY999_LONG_AXIS      = (    0.                     )
+
+        \begintext
+ 
+ 
+ 
+ 
+Orientation constants for the satellites
+--------------------------------------------------------
+ 
+ 
+Satellites of Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+
+ 
+     New values:
+ 
+        \begindata
+ 
+ 
+
+
+
+        BODY301_POLE_RA      = (  269.9949        0.0031        0.      )
+        BODY301_POLE_DEC     = (   66.5392        0.0130        0.      )
+        BODY301_PM           = (   38.3213       13.17635815   -1.4D-12 )
+        BODY301_LONG_AXIS    = (    0.                                  )
+   
+        BODY301_NUT_PREC_RA  = (   -3.8787   -0.1204   0.0700   -0.0172
+                                    0.0       0.0072   0.0       0.0
+                                    0.0      -0.0052   0.0       0.0
+                                    0.0043                              )
+        
+        BODY301_NUT_PREC_DEC = (   1.5419     0.0239  -0.0278    0.0068
+                                   0.0       -0.0029   0.0009    0.0
+                                   0.0        0.0008   0.0       0.0     
+                                  -0.0009                               )
+        
+        BODY301_NUT_PREC_PM  = (   3.5610     0.1208  -0.0642    0.0158
+                                   0.0252    -0.0066  -0.0047   -0.0046
+                                   0.0028     0.0052   0.0040    0.0019
+                                  -0.0044                               )
+        \begintext
+ 
+
+ 
+Satellites of Mars
+ 
+ 
+     Phobos
+ 
+          Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+          Current values:
+ 
+            The quadratic prime meridian term is scaled by 1/36525**2:
+ 
+               8.864000000000000   --->   6.6443009930565219E-09
+ 
+        \begindata
+ 
+          BODY401_POLE_RA  = ( 317.68    -0.108     0.                     )
+          BODY401_POLE_DEC = (  52.90    -0.061     0.                     )
+          BODY401_PM       = (  35.06  1128.8445850 6.6443009930565219E-09 )
+                                       
+          BODY401_LONG_AXIS     = (    0.   )
+ 
+          BODY401_NUT_PREC_RA   = (   1.79    0.    0.   0. )
+          BODY401_NUT_PREC_DEC  = (  -1.08    0.    0.   0. )
+          BODY401_NUT_PREC_PM   = (  -1.42   -0.78  0.   0. )
+
+
+        \begintext
+ 
+ 
+     Deimos
+ 
+        Old values:
+ 
+           Values are unchanged in the 2006 IAU report.
+ 
+ 
+        New values:
+ 
+           The Deimos prime meridian expression is:
+ 
+ 
+                                                     2
+              W = 79.41  +  285.1618970 d  -  0.520 T  -  2.58 sin M
+                                                                    3
+ 
+                                                       +  0.19 cos M .
+                                                                    3
+ 
+ 
+           At the present time, the PCK kernel software (the routine
+           BODEUL in particular) cannot handle the cosine term directly,
+           but we can represent it as
+ 
+              0.19 sin M
+                        4
+ 
+           where
+ 
+              M   =  90.D0 - M
+               4              3
+ 
+           Therefore, the nutation precession angle assignments for Phobos
+           and Deimos contain four coefficients rather than three.
+ 
+           The quadratic prime meridian term is scaled by 1/36525**2:
+ 
+              -0.5200000000000000  --->   -3.8978300049519307E-10
+ 
+        \begindata
+ 
+           BODY402_POLE_RA       = (  316.65     -0.108       0.           )
+           BODY402_POLE_DEC      = (   53.52     -0.061       0.           )
+           BODY402_PM            = (   79.41    285.1618970  -3.897830D-10 )
+           BODY402_LONG_AXIS     = (    0.                                 )
+ 
+           BODY402_NUT_PREC_RA   = (    0.   0.   2.98    0.   )
+           BODY402_NUT_PREC_DEC  = (    0.   0.  -1.78    0.   )
+           BODY402_NUT_PREC_PM   = (    0.   0.  -2.58    0.19 )
+
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Jupiter
+ 
+ 
+     Io
+ 
+          Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+          Current values:
+         
+        \begindata
+ 
+        BODY501_POLE_RA       = (  268.05          -0.009      0. )
+        BODY501_POLE_DEC      = (   64.50           0.003      0. )
+        BODY501_PM            = (  200.39         203.4889538  0. )
+        BODY501_LONG_AXIS     = (    0.                           )
+ 
+        BODY501_NUT_PREC_RA   = (    0.   0.     0.094    0.024   )
+        BODY501_NUT_PREC_DEC  = (    0.   0.     0.040    0.011   )
+        BODY501_NUT_PREC_PM   = (    0.   0.    -0.085   -0.022   )
+
+        \begintext
+ 
+ 
+ 
+     Europa
+ 
+ 
+        Old values:
+
+           Values are from the 2003 IAU report.
+
+
+        body502_pole_ra       = (  268.08          -0.009      0.   )
+        body502_pole_dec      = (   64.51           0.003      0.   )
+        body502_pm            = (   35.67         101.3747235  0.   )
+        body502_long_axis     = (    0.                             )
+ 
+        body502_nut_prec_ra   = ( 0. 0. 0.   1.086   0.060   0.015   0.009 )
+        body502_nut_prec_dec  = ( 0. 0. 0.   0.468   0.026   0.007   0.002 )
+        body502_nut_prec_pm   = ( 0. 0. 0.  -0.980  -0.054  -0.014  -0.008 )
+        
+
+        Current values:
+ 
+        \begindata 
+ 
+        BODY502_POLE_RA       = (  268.08          -0.009      0.   )
+        BODY502_POLE_DEC      = (   64.51           0.003      0.   )
+        BODY502_PM            = (   36.022        101.3747235  0.   )
+        BODY502_LONG_AXIS     = (    0.                             )
+ 
+        BODY502_NUT_PREC_RA   = ( 0. 0. 0.   1.086   0.060   0.015   0.009 )
+        BODY502_NUT_PREC_DEC  = ( 0. 0. 0.   0.468   0.026   0.007   0.002 )
+        BODY502_NUT_PREC_PM   = ( 0. 0. 0.  -0.980  -0.054  -0.014  -0.008 )
+ 
+        \begintext
+ 
+ 
+     Ganymede
+ 
+        Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+
+        Current values:
+        
+        \begindata
+    
+        BODY503_POLE_RA       = (  268.20         -0.009       0.  )
+        BODY503_POLE_DEC      = (   64.57          0.003       0.  )
+        BODY503_PM            = (   44.064        50.3176081   0.  )
+        BODY503_LONG_AXIS     = (    0.                            )
+
+        BODY503_NUT_PREC_RA   = ( 0. 0. 0.  -0.037   0.431   0.091   )
+        BODY503_NUT_PREC_DEC  = ( 0. 0. 0.  -0.016   0.186   0.039   )
+        BODY503_NUT_PREC_PM   = ( 0. 0. 0.   0.033  -0.389  -0.082   )
+ 
+        \begintext
+ 
+ 
+     Callisto
+ 
+        Old values:
+
+             Values are unchanged in the 2006 IAU report.
+        
+        
+        Current values:
+        
+        
+        \begindata
+  
+        BODY504_POLE_RA       = (   268.72    -0.009       0.  )
+        BODY504_POLE_DEC      = (    64.83     0.003       0.  )
+        BODY504_PM            = (   259.51    21.5710715   0.  )
+        BODY504_LONG_AXIS     = (     0.                       )
+ 
+        BODY504_NUT_PREC_RA   = ( 0. 0. 0. 0.  -0.068   0.590  0.   0.010 )
+        BODY504_NUT_PREC_DEC  = ( 0. 0. 0. 0.  -0.029   0.254  0.  -0.004 )
+        BODY504_NUT_PREC_PM   = ( 0. 0. 0. 0.   0.061  -0.533  0.  -0.009 )
+ 
+        \begintext
+ 
+ 
+     Amalthea
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.        
+        
+        Current values:
+         
+        \begindata
+ 
+        BODY505_POLE_RA       = (   268.05    -0.009      0.  )
+        BODY505_POLE_DEC      = (    64.49     0.003      0.  )
+        BODY505_PM            = (   231.67   722.6314560  0.  )
+        BODY505_LONG_AXIS     = (     0.                      )
+ 
+        BODY505_NUT_PREC_RA  = ( -0.84  0. 0. 0. 0. 0. 0. 0.   0.01  0. )
+        BODY505_NUT_PREC_DEC = ( -0.36  0. 0. 0. 0. 0. 0. 0.   0.    0. )
+        BODY505_NUT_PREC_PM  = (  0.76  0. 0. 0. 0. 0. 0. 0.  -0.01  0. )
+ 
+        \begintext
+ 
+ 
+     Thebe
+ 
+ 
+        Old values:
+                
+           Values are unchanged in the 2006 IAU report.                
+          
+        Current values:
+        
+        \begindata
+ 
+        BODY514_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY514_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY514_PM            = (    8.56    533.7004100   0.  )
+        BODY514_LONG_AXIS     = (    0.                        )
+ 
+        BODY514_NUT_PREC_RA  = ( 0.  -2.11  0. 0. 0. 0. 0. 0. 0.  0.04 )
+        BODY514_NUT_PREC_DEC = ( 0.  -0.91  0. 0. 0. 0. 0. 0. 0.  0.01 )
+        BODY514_NUT_PREC_PM  = ( 0.   1.91  0. 0. 0. 0. 0. 0. 0. -0.04 )
+ 
+        \begintext
+ 
+ 
+     Adrastea
+ 
+        Old values:
+                
+           Values are unchanged in the 2006 IAU report.                
+        
+        Current values:
+        
+        \begindata
+ 
+ 
+ 
+        BODY515_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY515_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY515_PM            = (   33.29   1206.9986602   0.  )
+        BODY515_LONG_AXIS     = (    0.                        )
+
+        \begintext
+ 
+ 
+     Metis
+  
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+              
+        Current values:
+           
+        \begindata
+
+        BODY516_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY516_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY516_PM            = (  346.09   1221.2547301   0.  )
+        BODY516_LONG_AXIS     = (    0.                        )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Saturn
+      
+     
+     Mimas
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+               
+        Current values:
+ 
+        \begindata
+  
+           BODY601_POLE_RA       = (   40.66     -0.036      0.  )
+           BODY601_POLE_DEC      = (   83.52     -0.004      0.  )
+           BODY601_PM            = (  337.46    381.9945550  0.  )
+           BODY601_LONG_AXIS     = (     0.                      )
+ 
+           BODY601_NUT_PREC_RA   = ( 0. 0.   13.56  0.    0.    0. 0. 0. 0. )
+           BODY601_NUT_PREC_DEC  = ( 0. 0.   -1.53  0.    0.    0. 0. 0. 0. )
+           BODY601_NUT_PREC_PM   = ( 0. 0.  -13.48  0.  -44.85  0. 0. 0. 0. )
+
+        \begintext
+ 
+ 
+     Enceladus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+               
+        Current values:
+ 
+        \begindata
+ 
+           BODY602_POLE_RA       = (   40.66    -0.036       0. )
+           BODY602_POLE_DEC      = (   83.52    -0.004       0. )
+           BODY602_PM            = (    2.82   262.7318996   0. )
+           BODY602_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+     Tethys
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+ 
+           BODY603_POLE_RA       = (   40.66    -0.036       0. )
+           BODY603_POLE_DEC      = (   83.52    -0.004       0. )
+           BODY603_PM            = (   10.45   190.6979085   0. )
+           BODY603_LONG_AXIS     = (    0.                      )
+ 
+           BODY603_NUT_PREC_RA   = ( 0. 0. 0.   9.66   0.    0.  0.  0.  0. )
+           BODY603_NUT_PREC_DEC  = ( 0. 0. 0.  -1.09   0.    0.  0.  0.  0. )
+           BODY603_NUT_PREC_PM   = ( 0. 0. 0.  -9.60   2.23  0.  0.  0.  0. )
+
+        \begintext
+ 
+ 
+     Dione
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+   
+           BODY604_POLE_RA       = (  40.66      -0.036      0.  )
+           BODY604_POLE_DEC      = (  83.52      -0.004      0.  )
+           BODY604_PM            = (  357.00    131.5349316  0.  )
+           BODY604_LONG_AXIS     = (    0.                       )
+
+        \begintext
+ 
+ 
+ 
+     Rhea
+     
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+   
+           BODY605_POLE_RA       = (   40.38   -0.036       0. )
+           BODY605_POLE_DEC      = (   83.55   -0.004       0. )
+           BODY605_PM            = (  235.16   79.6900478   0. )
+           BODY605_LONG_AXIS     = (    0.                     )
+ 
+           BODY605_NUT_PREC_RA   = ( 0. 0. 0. 0. 0.   3.10   0. 0. 0. )
+           BODY605_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0.  -0.35   0. 0. 0. )
+           BODY605_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  -3.08   0. 0. 0. )
+ 
+        \begintext
+ 
+ 
+ 
+     Titan
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY606_POLE_RA       = (    36.41   -0.036      0. )
+           BODY606_POLE_DEC      = (    83.94   -0.004      0. )
+           BODY606_PM            = (   189.64   22.5769768  0. )
+           BODY606_LONG_AXIS     = (     0.                    )
+ 
+           BODY606_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 0.  2.66  0. 0 )
+           BODY606_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 0. -0.30  0. 0 )
+           BODY606_NUT_PREC_PM   = ( 0. 0. 0. 0. 0. 0. -2.64  0. 0 )
+
+        \begintext
+ 
+ 
+ 
+     Hyperion
+ 
+         The IAU report does not give an orientation model for Hyperion.
+         Hyperion's rotation is in chaotic and is not predictable for
+         long periods.
+
+ 
+     Iapetus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY608_POLE_RA       = (   318.16  -3.949      0.  )
+           BODY608_POLE_DEC      = (    75.03  -1.143      0.  )
+           BODY608_PM            = (   350.20   4.5379572  0.  )
+           BODY608_LONG_AXIS     = (     0.                    )
+
+        \begintext
+ 
+ 
+ 
+     Phoebe
+ 
+
+        Old values:
+        
+           Values are from the 2003 IAU report. 
+  
+           body609_pole_ra       = ( 355.00       0.         0.  )
+           body609_pole_dec      = (  68.70       0.         0.  )
+           body609_pm            = ( 304.70     930.8338720  0.  )
+           body609_long_axis     = (    0.                       )
+
+        Current values:
+ 
+        \begindata 
+  
+           BODY609_POLE_RA       = ( 356.90       0.         0.  )
+           BODY609_POLE_DEC      = (  77.80       0.         0.  )
+           BODY609_PM            = ( 178.58     931.639      0.  )
+           BODY609_LONG_AXIS     = (    0.                       )
+
+        \begintext
+ 
+ 
+     Janus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY610_POLE_RA       = (  40.58    -0.036       0. )
+           BODY610_POLE_DEC      = (  83.52    -0.004       0. )
+           BODY610_PM            = (  58.83   518.2359876   0. )
+           BODY610_LONG_AXIS     = (   0.                      )
+ 
+           BODY610_NUT_PREC_RA   = ( 0. -1.623  0. 0. 0. 0. 0. 0.  0.023 )
+           BODY610_NUT_PREC_DEC  = ( 0. -0.183  0. 0. 0. 0. 0. 0.  0.001 )
+           BODY610_NUT_PREC_PM   = ( 0.  1.613  0. 0. 0. 0. 0. 0. -0.023 )
+ 
+        \begintext
+ 
+ 
+ 
+     Epimetheus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+         
+        Current values:
+ 
+        \begindata 
+  
+           BODY611_POLE_RA       = (  40.58    -0.036        0. )
+           BODY611_POLE_DEC      = (  83.52    -0.004        0. )
+           BODY611_PM            = ( 293.87   518.4907239    0. )
+           BODY611_LONG_AXIS     = (   0.                       )
+ 
+           BODY611_NUT_PREC_RA   = ( -3.153   0. 0. 0. 0. 0. 0.   0.086  0. )
+           BODY611_NUT_PREC_DEC  = ( -0.356   0. 0. 0. 0. 0. 0.   0.005  0. )
+           BODY611_NUT_PREC_PM   = (  3.133   0. 0. 0. 0. 0. 0.  -0.086  0. )
+
+        \begintext
+ 
+ 
+ 
+     Helene
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY612_POLE_RA       = (  40.85     -0.036        0. )
+           BODY612_POLE_DEC      = (  83.34     -0.004        0. )
+           BODY612_PM            = ( 245.12    131.6174056    0. )
+           BODY612_LONG_AXIS     = (   0.                        )
+
+        \begintext
+ 
+ 
+ 
+     Telesto
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY613_POLE_RA       = ( 50.51    -0.036      0.  )
+           BODY613_POLE_DEC      = ( 84.06    -0.004      0.  )
+           BODY613_PM            = ( 56.88   190.6979332  0.  )
+           BODY613_LONG_AXIS     = (  0.                      )
+
+        \begintext
+
+ 
+ 
+     Calypso
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY614_POLE_RA       = (   36.41    -0.036        0.  )
+           BODY614_POLE_DEC      = (   85.04    -0.004        0.  )
+           BODY614_PM            = (  153.51   190.6742373    0.  )
+           BODY614_LONG_AXIS     = (    0.                        )
+ 
+        \begintext
+ 
+ 
+ 
+     Atlas
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY615_POLE_RA       = (   40.58     -0.036      0. )
+           BODY615_POLE_DEC      = (   83.53     -0.004      0. )  
+           BODY615_PM            = (  137.88    598.3060000  0. )
+           BODY615_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+     Prometheus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY616_POLE_RA       = (  40.58      -0.036    )
+           BODY616_POLE_DEC      = (  83.53      -0.004    )
+           BODY616_PM            = ( 296.14     587.289000 )
+           BODY616_LONG_AXIS     = (   0.                  )
+ 
+        \begintext
+ 
+ 
+ 
+     Pandora
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY617_POLE_RA       = (   40.58     -0.036      0.  )
+           BODY617_POLE_DEC      = (   83.53     -0.004      0.  )
+           BODY617_PM            = (  162.92    572.7891000  0.  )
+           BODY617_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+ 
+ 
+ 
+     Pan
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY618_POLE_RA       = (   40.6     -0.036       0. )
+           BODY618_POLE_DEC      = (   83.5     -0.004       0. )
+           BODY618_PM            = (   48.8    626.0440000   0. )
+           BODY618_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+ 
+ 
+Satellites of Uranus
+ 
+  
+ 
+     Ariel
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+
+        \begindata 
+
+           BODY701_POLE_RA       = ( 257.43     0.          0. )
+           BODY701_POLE_DEC      = ( -15.10     0.          0. )
+           BODY701_PM            = ( 156.22  -142.8356681   0. )
+           BODY701_LONG_AXIS     = (   0.                      )
+ 
+           BODY701_NUT_PREC_RA   = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.    0.    0.29 )
+ 
+           BODY701_NUT_PREC_DEC  = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.    0.    0.28 )
+ 
+           BODY701_NUT_PREC_PM   = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.   0.05   0.08 )
+        \begintext
+ 
+ 
+ 
+     Umbriel
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY702_POLE_RA       = (  257.43     0.          0. )
+           BODY702_POLE_DEC      = (  -15.10     0.          0. )
+           BODY702_PM            = (  108.05   -86.8688923   0. )
+           BODY702_LONG_AXIS     = (    0.                      )
+ 
+           BODY702_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.   0.    0.   0.21 )
+ 
+           BODY702_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.   0.    0.   0.20 )
+ 
+           BODY702_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0.  -0.09  0.   0.06 )
+
+        \begintext
+ 
+ 
+ 
+     Titania
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY703_POLE_RA       = (  257.43    0.          0. )
+           BODY703_POLE_DEC      = (  -15.10    0.          0. )
+           BODY703_PM            = (   77.74  -41.3514316   0. )
+           BODY703_LONG_AXIS     = (    0.                     )
+ 
+           BODY703_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.29 )
+ 
+           BODY703_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.28 )
+ 
+           BODY703_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.08 )
+        \begintext
+ 
+ 
+ 
+     Oberon
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY704_POLE_RA       = (  257.43    0.          0. )
+           BODY704_POLE_DEC      = (  -15.10    0.          0. )
+           BODY704_PM            = (    6.77  -26.7394932   0. )
+           BODY704_LONG_AXIS     = (    0.                     )
+ 
+ 
+           BODY704_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.16 )
+ 
+           BODY704_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.16 )
+ 
+           BODY704_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0.04 )
+        \begintext
+ 
+ 
+ 
+     Miranda
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+
+           BODY705_POLE_RA      = (  257.43     0.         0. )
+           BODY705_POLE_DEC     = (  -15.08     0.         0. )
+           BODY705_PM           = (   30.70  -254.6906892  0. )
+           BODY705_LONG_AXIS    = (    0.                     )
+ 
+           BODY705_NUT_PREC_RA  = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    4.41   0.     0.    0.    0. 
+                                    0.    -0.04   0.             )
+ 
+           BODY705_NUT_PREC_DEC = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    4.25   0.     0.    0.    0. 
+                                    0.    -0.02   0.             )
+ 
+           BODY705_NUT_PREC_PM  = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    1.15  -1.27   0.    0.    0.  
+                                    0.    -0.09   0.15           )
+        \begintext
+ 
+ 
+ 
+     Cordelia
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY706_POLE_RA      = (   257.31      0.         0.  )
+           BODY706_POLE_DEC     = (   -15.18      0.         0.  )
+           BODY706_PM           = (   127.69  -1074.5205730  0.  )
+           BODY706_LONG_AXIS    = (     0.                       )
+ 
+           BODY706_NUT_PREC_RA  = (   -0.15    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY706_NUT_PREC_DEC = (    0.14    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )  
+
+           BODY706_NUT_PREC_PM  = (   -0.04    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             ) 
+ 
+        \begintext
+ 
+ 
+
+     Ophelia
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+   
+           BODY707_POLE_RA      = (  257.31     0.         0. )
+           BODY707_POLE_DEC     = (  -15.18     0.         0. )
+           BODY707_PM           = (  130.35  -956.4068150  0. )
+           BODY707_LONG_AXIS    = (    0.                     )
+ 
+           BODY707_NUT_PREC_RA  = (    0.     -0.09   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY707_NUT_PREC_DEC = (    0.      0.09   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY707_NUT_PREC_PM  = (    0.     -0.03   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+ 
+        \begintext
+ 
+ 
+ 
+     Bianca
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY708_POLE_RA      = (  257.31     0.         0.  )
+           BODY708_POLE_DEC     = (  -15.18     0.         0.  )
+           BODY708_PM           = (  105.46  -828.3914760  0.  )
+           BODY708_LONG_AXIS    = (    0.                      )
+ 
+           BODY708_NUT_PREC_RA  = (    0.      0.    -0.16    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+           BODY708_NUT_PREC_DEC = (    0.      0.     0.16    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+           BODY708_NUT_PREC_PM  = (    0.      0.    -0.04    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+        \begintext
+ 
+ 
+ 
+     Cressida
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+ 
+           BODY709_POLE_RA      = (  257.31      0.          0.  )
+           BODY709_POLE_DEC     = (  -15.18      0.          0.  )
+           BODY709_PM           = (   59.16   -776.5816320   0.  )
+           BODY709_LONG_AXIS    = (    0.                        )
+ 
+
+           BODY709_NUT_PREC_RA  = (    0.      0.     0.     -0.04   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+           BODY709_NUT_PREC_DEC = (    0.      0.     0.      0.04   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+           BODY709_NUT_PREC_PM  = (    0.      0.     0.     -0.01   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+        \begintext
+ 
+ 
+ 
+     Desdemona
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+  
+           BODY710_POLE_RA      = ( 257.31      0.           0.  )
+           BODY710_POLE_DEC     = ( -15.18      0.           0.  )
+           BODY710_PM           = (  95.08   -760.0531690    0.  )
+           BODY710_LONG_AXIS    = (   0.                         )
+ 
+           BODY710_NUT_PREC_RA  = (   0.      0.     0.      0.    -0.17 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY710_NUT_PREC_DEC = (   0.      0.     0.      0.     0.16 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY710_NUT_PREC_PM  = (   0.      0.     0.      0.    -0.04  
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+
+        \begintext
+ 
+ 
+ 
+     Juliet
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY711_POLE_RA      = (  257.31     0.           0.   )
+           BODY711_POLE_DEC     = (  -15.18     0.           0.   )
+           BODY711_PM           = (  302.56  -730.1253660    0.   )
+           BODY711_LONG_AXIS    = (    0.                         )
+ 
+           BODY711_NUT_PREC_RA  = (   0.      0.     0.      0.     0.  
+                                     -0.06    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+ 
+           BODY711_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.06    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+  
+           BODY711_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                     -0.02    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+ 
+        \begintext
+ 
+ 
+ 
+     Portia
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+    
+           BODY712_POLE_RA      = (  257.31      0.           0.   )
+           BODY712_POLE_DEC     = (  -15.18      0.           0.   )
+           BODY712_PM           = (   25.03   -701.4865870    0.   )
+           BODY712_LONG_AXIS    = (    0.                          )
+ 
+           BODY712_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.     -0.09   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY712_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.09   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+           BODY712_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.     -0.02   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+        \begintext
+ 
+ 
+ 
+     Rosalind
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+   
+           BODY713_POLE_RA      = ( 257.31      0.          0.  )
+           BODY713_POLE_DEC     = ( -15.18      0.          0.  )
+           BODY713_PM           = ( 314.90   -644.6311260   0.  )
+           BODY713_LONG_AXIS    = (   0.                        )
+ 
+           BODY713_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.    -0.29    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+           BODY713_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.28    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.              )
+
+           BODY713_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.    -0.08    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.              )
+ 
+        \begintext
+ 
+ 
+ 
+     Belinda
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY714_POLE_RA      = (   257.31      0.         0. )
+           BODY714_POLE_DEC     = (   -15.18      0.         0. )
+           BODY714_PM           = (   297.46   -577.3628170  0. )
+           BODY714_LONG_AXIS    = (     0.                      )
+ 
+           BODY714_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.     -0.03   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY714_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.03   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY714_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.     -0.01   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+        \begintext
+ 
+ 
+ 
+     Puck
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY715_POLE_RA      = (  257.31      0.         0.  )
+           BODY715_POLE_DEC     = (  -15.18      0.         0.  )
+           BODY715_PM           = (   91.24   -472.5450690  0.  )
+           BODY715_LONG_AXIS    = (    0.                       )
+ 
+           BODY715_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.    -0.33 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY715_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.     0.31
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY715_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.    -0.09
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+  
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Neptune
+ 
+ 
+     Triton
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+
+           BODY801_POLE_RA       = ( 299.36     0.         0.  )
+           BODY801_POLE_DEC      = (  41.17     0.         0.  )
+           BODY801_PM            = ( 296.53   -61.2572637  0.  )
+           BODY801_LONG_AXIS     = (   0.                      )
+ 
+ 
+           BODY801_NUT_PREC_RA   = (  0.      0.      0.      0.  
+                                      0.      0.      0.    -32.35    
+                                      0.     -6.28   -2.08   -0.74       
+                                     -0.28   -0.11   -0.07   -0.02    
+                                     -0.01                         )
+ 
+ 
+           BODY801_NUT_PREC_DEC  = (  0.      0.      0.      0.  
+                                      0.      0.      0.     22.55    
+                                      0.      2.10    0.55    0.16   
+                                      0.05    0.02    0.01    0.
+                                      0.                           )
+ 
+ 
+           BODY801_NUT_PREC_PM   = (  0.      0.      0.      0.  
+                                      0.      0.      0.     22.25   
+                                      0.      6.73    2.05    0.74   
+                                      0.28    0.11    0.05    0.02
+                                      0.01                         )
+  
+        \begintext
+ 
+ 
+ 
+ 
+     Nereid
+ 
+        Old values:
+ 
+           Values are from the 1988 IAU report [10].  Note that this 
+           rotation model pre-dated the 1989 Voyager 2 Neptune
+           encounter.
+
+ 
+           body802_pole_ra       = (    273.48    0.        0.  )
+           body802_pole_dec      = (     67.22    0.        0.  )
+           body802_pm            = (    237.22    0.9996465 0.  )
+           body802_long_axis     = (      0.                    )
+ 
+ 
+           The report seems to have a typo:  in the nut_prec_ra expression,
+           where the report gives  -0.51 sin 3N3, we use -0.51 3N2.
+ 
+           body802_nut_prec_ra   = (  0.    -17.81
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                      2.56   -0.51   0.11   -0.03  )
+ 
+           body802_nut_prec_dec  = (  0.     -6.67
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                      0.47   -0.07   0.01          )
+ 
+           body802_nut_prec_pm   = (  0.     16.48
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                     -2.57    0.51 -0.11    0.02  )
+ 
+ 
+ 
+        Current values:
+ 
+           The 2006 report [1] states that values for Nereid are not
+           given because Nereid is not in synchronous rotation with Neptune
+           (p. 167).
+ 
+ 
+ 
+     Naiad
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY803_POLE_RA       = (  299.36      0.          0.  )
+           BODY803_POLE_DEC      = (   43.36      0.          0.  )
+           BODY803_PM            = (  254.06  +1222.8441209   0.  )
+           BODY803_LONG_AXIS     = (    0.                        )
+ 
+ 
+           BODY803_NUT_PREC_RA   = (    0.70     -6.49     0.      0.
+                                        0.        0.       0.      0.
+                                        0.25      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY803_NUT_PREC_DEC  = (   -0.51     -4.75     0.      0.
+                                        0.        0.       0.      0.
+                                        0.09      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY803_NUT_PREC_PM   = (   -0.48      4.40     0.      0.
+                                        0.        0.       0.      0.
+                                       -0.27      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+    
+        \begintext
+ 
+ 
+ 
+ 
+     Thalassa
+ 
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY804_POLE_RA       = (  299.36      0.          0. )
+           BODY804_POLE_DEC      = (   43.45      0.          0. )
+           BODY804_PM            = (  102.06   1155.7555612   0. )  
+           BODY804_LONG_AXIS     = (    0.                       )
+ 
+ 
+           BODY804_NUT_PREC_RA   = (    0.70      0.      -0.28    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+   
+  
+           BODY804_NUT_PREC_DEC  = (   -0.51      0.      -0.21    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0. 
+                                        0.                             )
+ 
+           BODY804_NUT_PREC_PM   = (   -0.48      0.       0.19    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0. 
+                                        0.                             )
+                                                                 
+        \begintext
+ 
+ 
+ 
+     Despina
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY805_POLE_RA       = (  299.36      0.          0. )
+           BODY805_POLE_DEC      = (   43.45      0.          0. )
+           BODY805_PM            = (  306.51  +1075.7341562   0. )
+           BODY805_LONG_AXIS     = (    0.                       )
+ 
+ 
+           BODY805_NUT_PREC_RA   = (    0.70      0.       0.     -0.09
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+ 
+           BODY805_NUT_PREC_DEC  = (   -0.51      0.       0.     -0.07
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+ 
+           BODY805_NUT_PREC_PM   = (   -0.49      0.       0.      0.06
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+        \begintext
+ 
+ 
+ 
+     Galatea
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY806_POLE_RA       = (   299.36      0.          0. )
+           BODY806_POLE_DEC      = (    43.43      0.          0. )
+           BODY806_PM            = (   258.09    839.6597686   0. )
+           BODY806_LONG_AXIS     = (     0.                       )
+ 
+ 
+           BODY806_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                       -0.07      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY806_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                       -0.05      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY806_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.05      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             ) 
+        \begintext
+
+ 
+     Larissa
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+  
+        \begindata
+
+           BODY807_POLE_RA       = (   299.36     0.           0. )
+           BODY807_POLE_DEC      = (    43.41     0.           0. )
+           BODY807_PM            = (   179.41  +649.0534470    0. )
+           BODY807_LONG_AXIS     = (     0.                       )
+ 
+ 
+           BODY807_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                        0.       -0.27     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY807_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                        0.       -0.20     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY807_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.        0.19     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+        \begintext
+ 
+ 
+ 
+     Proteus
+ 
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY808_POLE_RA       = (  299.27      0.          0.  )
+           BODY808_POLE_DEC      = (   42.91      0.          0.  )
+           BODY808_PM            = (   93.38   +320.7654228   0.  )
+           BODY808_LONG_AXIS     = (    0.                        )
+ 
+ 
+           BODY808_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                        0.        0.      -0.05    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY808_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                        0.        0.      -0.04    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY808_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.        0.       0.04    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+   
+        \begintext
+  
+ 
+ 
+ 
+ 
+Satellites of Pluto
+ 
+     Charon
+ 
+        Old values:
+        
+           Values are from the 2003 IAU report. 
+ 
+           body901_pole_ra       = (   313.02     0.         0. )
+           body901_pole_dec      = (     9.09     0.         0. )
+           body901_pm            = (    56.77   -56.3623195  0. )
+           body901_long_axis     = (     0.                     )
+               
+        Current values:
+ 
+        \begindata
+ 
+           BODY901_POLE_RA       = (   312.993    0.         0. )
+           BODY901_POLE_DEC      = (     6.163    0.         0. )
+           BODY901_PM            = (    57.305  -56.3625225  0. )
+           BODY901_LONG_AXIS     = (     0.                     )
+
+        \begintext
+ 
+ 
+ 
+Orientation constants for Selected Comets and Asteroids
+--------------------------------------------------------
+
+
+
+19P/Borrelly
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY1000005_POLE_RA       = (   218.5      0.         0.  )
+           BODY1000005_POLE_DEC      = (   -12.5      0.         0.  )
+           BODY1000005_PM            = (   000.     390.0        0.  )
+           BODY1000005_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+
+
+
+9P/Tempel 1
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY1000093_POLE_RA       = (   294.       0.         0.  )
+           BODY1000093_POLE_DEC      = (    73.       0.         0.  )
+           BODY1000093_PM            = (   252.63   212.064      0.  )
+           BODY1000093_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+
+
+Vesta
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY2000004_POLE_RA       = (   301.      0.         0.  )
+           BODY2000004_POLE_DEC      = (    41.      0.         0.  )
+           BODY2000004_PM            = (   292.   1617.332776   0.  )
+           BODY2000004_LONG_AXIS     = (     0.                     )
+ 
+        \begintext
+
+Eros
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY2000433_POLE_RA       = (   11.35       0.           0. )
+           BODY2000433_POLE_DEC      = (   17.22       0.           0. )
+           BODY2000433_PM            = (  326.07    1639.38864745   0. )
+           BODY2000433_LONG_AXIS     = (    0.                         )
+ 
+        \begintext
+
+
+Itokawa
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY2025143_POLE_RA       = (   90.53       0.           0. )
+           BODY2025143_POLE_DEC      = (  -66.30       0.           0. )
+           BODY2025143_PM            = (  000.0      712.143        0. )
+           BODY2025143_LONG_AXIS     = (    0.                         )
+ 
+        \begintext
+
+
+
+Ida
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY2431010_POLE_RA       = (  168.76      0.         0. )
+           BODY2431010_POLE_DEC      = (   -2.88      0.         0. )
+           BODY2431010_PM            = (  265.95  +1864.6280070  0. )
+           BODY2431010_LONG_AXIS     = (    0.                      )
+ 
+        \begintext
+
+Gaspra
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+               
+        Current values:
+ 
+        \begindata 
+ 
+           BODY9511010_POLE_RA       = (   9.47     0.         0. )
+           BODY9511010_POLE_DEC      = (  26.70     0.         0. )
+           BODY9511010_PM            = (  83.67  1226.9114850  0. )
+           BODY9511010_LONG_AXIS     = (   0.                     )
+
+        \begintext
+
+
+
+
+
+
+
+
+
+ 
+Radii of Sun and Planets
+--------------------------------------------------------
+ 
+ 
+Sun
+ 
+     Value for the Sun is from the [3], page K7.
+ 
+        \begindata
+ 
+        BODY10_RADII      = (   696000.     696000.      696000.     )
+ 
+        \begintext
+ 
+ 
+Mercury
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY199_RADII     = ( 2439.7   2439.7   2439.7 )
+ 
+        \begintext
+ 
+ 
+Venus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY299_RADII     = ( 6051.8   6051.8   6051.8 )
+ 
+        \begintext
+ 
+ 
+Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+
+        \begindata
+ 
+        BODY399_RADII     = ( 6378.14   6378.14   6356.75 )
+ 
+        \begintext
+ 
+ 
+Mars
+ 
+ 
+     Old values:
+
+        body499_radii       = (     3397.      3397.         3375.     )
+ 
+     Current values:
+
+
+        The IAU report gives separate values for the north and south
+        polar radii:
+
+           north:  3373.19
+           south:  3379.21 
+
+        We use the average of these values as the polar radius for
+        the triaxial model.
+ 
+        \begindata
+ 
+        BODY499_RADII       = ( 3396.19   3396.19   3376.20 )
+ 
+        \begintext
+ 
+ 
+ 
+Jupiter
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY599_RADII     = ( 71492   71492   66854 )
+ 
+        \begintext
+ 
+ 
+ 
+Saturn
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY699_RADII     = ( 60268   60268   54364 )
+ 
+        \begintext
+ 
+ 
+ 
+Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY799_RADII     = ( 25559   25559   24973 )
+ 
+        \begintext
+ 
+ 
+ 
+Neptune
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+  
+     Current values:
+ 
+        (Values are for the 1 bar pressure level.)
+ 
+        \begindata
+ 
+        BODY899_RADII     = ( 24764   24764  24341 )
+ 
+        \begintext
+ 
+ 
+ 
+Pluto
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY999_RADII     = ( 1195   1195   1195 )
+ 
+        \begintext
+ 
+
+
+
+Radii of Satellites
+--------------------------------------------------------
+ 
+ 
+Moon
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY301_RADII     = ( 1737.4   1737.4   1737.4 )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Mars
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY401_RADII     = ( 13.4    11.2    9.2 )
+        BODY402_RADII     = (  7.5     6.1    5.2 )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Jupiter
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+         
+        \begindata
+ 
+        BODY501_RADII     = ( 1829.4   1819.3   1815.7  )
+        BODY502_RADII     = ( 1564.13  1561.23  1560.93 )
+        BODY503_RADII     = ( 2632.4   2632.29  2632.35 )
+        BODY504_RADII     = ( 2409.4   2409.2   2409.3  )
+        BODY505_RADII     = (  125       73       64    )
+ 
+        \begintext
+ 
+        Only mean radii are available in the 2003 IAU report for bodies
+        506-513.
+ 
+        \begindata
+ 
+        BODY506_RADII    = (    85       85       85   )
+        BODY507_RADII    = (    40       40       40   )
+        BODY508_RADII    = (    18       18       18   )
+        BODY509_RADII    = (    14       14       14   )
+        BODY510_RADII    = (    12       12       12   )
+        BODY511_RADII    = (    15       15       15   )
+        BODY512_RADII    = (    10       10       10   )
+        BODY513_RADII    = (     5        5        5   )
+        BODY514_RADII    = (    58       49       42   )
+        BODY515_RADII    = (    10        8        7   )
+ 
+        \begintext
+ 
+        The value for the second radius for body 516 is not given in 
+        2003 IAU report.   The values given are:
+ 
+           BODY516_RADII    = (  30   ---   20   )
+ 
+        For use within the SPICE system, we use only the mean radius.
+        \begindata
+ 
+        BODY516_RADII    = (  21.5   21.5  21.5  )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Saturn
+ 
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report.
+    
+        body601_radii     = (  209.1   196.2   191.4 )
+        body602_radii     = (  256.3   247.3   244.6 )
+        body603_radii     = (  535.6   528.2   525.8 )
+        body604_radii     = (  560     560     560   )
+        body605_radii     = (  764     764     764   )
+        body606_radii     = ( 2575    2575    2575   )
+        body607_radii     = (  164     130     107   )
+        body608_radii     = (  718     718     718   )
+        body609_radii     = (  115     110     105   )
+        body610_radii     = (   97.0    95.0    77.0 )
+        body611_radii     = (   69.0    55.0    55.0 )
+ 
+ 
+        Only the first equatorial radius for Helene (body 612) was given in the
+        2003 IAU report:
+ 
+            body612_radii     = (       17.5        ---          ---     )
+ 
+        The mean radius was 16km; we used this radius for all three axes, as
+        we do for the satellites for which only the mean radius is available.
+ 
+ 
+        body612_radii     = (   16      16       16  )
+        body613_radii     = (   15      12.5     7.5 )
+        body614_radii     = (   15.0     8.0     8.0 )
+        body615_radii     = (   18.5    17.2    13.5 )
+        body616_radii     = (   74.0    50.0    34.0 )
+        body617_radii     = (   55.0    44.0    31.0 )
+  
+      
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY601_RADII     = (  207.4     196.8     190.6  )
+        BODY602_RADII     = (  256.6     251.4     248.3  )
+        BODY603_RADII     = (  540.4     531.1     527.5  )
+        BODY604_RADII     = (  563.8     561.0     560.3  )
+        BODY605_RADII     = (  767.2     762.5     763.1  )
+        BODY606_RADII     = ( 2575      2575      2575    )
+        BODY607_RADII     = (  164       130       107    )
+        BODY608_RADII     = (  747.4     747.4     712.4  )
+        BODY609_RADII     = (  108.6     107.7     101.5  )
+        BODY610_RADII     = (   97.0      95.0      77.0  )
+        BODY611_RADII     = (   69.0      55.0      55.0  )
+ 
+        \begintext
+ 
+        Only the first equatorial radius for Helene (body 612) is given in the
+        2006 IAU report:
+ 
+            BODY612_RADII     = (       17.5        ---          ---     )
+ 
+        The mean radius is 16km; we use this radius for all three axes, as
+        we do for the satellites for which only the mean radius is available.
+ 
+ 
+        \begindata
+ 
+        BODY612_RADII     = (  17.5      17.5      17.5  )
+        BODY613_RADII     = (  15        12.5       7.5  )
+        BODY614_RADII     = (  15.0       8.0       8.0  )
+        BODY615_RADII     = (  18.5      17.2      13.5  )
+        BODY616_RADII     = (  74.0      50.0      34.0  )
+        BODY617_RADII     = (  55.0      44.0      31.0  )
+ 
+        \begintext
+ 
+ 
+         For Pan, only a mean radius is given in the 2006 report.
+ 
+        \begindata
+ 
+        BODY618_RADII     = (   10       10     10   )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY701_RADII     = (  581.1   577.9   577.7 )
+        BODY702_RADII     = (  584.7   584.7   584.7 )
+        BODY703_RADII     = (  788.9   788.9   788.9 )
+        BODY704_RADII     = (  761.4   761.4   761.4 )
+        BODY705_RADII     = (  240.4   234.2   232.9 )
+ 
+        \begintext
+ 
+        The 2000 report gives only mean radii for satellites 706--715.
+ 
+        \begindata
+ 
+        BODY706_RADII     = (   13      13      13 )
+        BODY707_RADII     = (   15      15      15 )
+        BODY708_RADII     = (   21      21      21 )
+        BODY709_RADII     = (   31      31      31 )
+        BODY710_RADII     = (   27      27      27 )
+        BODY711_RADII     = (   42      42      42 )
+        BODY712_RADII     = (   54      54      54 )
+        BODY713_RADII     = (   27      27      27 )
+        BODY714_RADII     = (   33      33      33 )
+        BODY715_RADII     = (   77      77      77 )
+ 
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Neptune
+ 
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        The 2000 report gives mean radii only for bodies 801-806.
+ 
+        \begindata
+ 
+        BODY801_RADII     = ( 1352.6  1352.6  1352.6 )
+        BODY802_RADII     = (  170     170     170   )
+        BODY803_RADII     = (   29      29     29    )
+        BODY804_RADII     = (   40      40     40    )
+        BODY805_RADII     = (   74      74     74    )
+        BODY806_RADII     = (   79      79     79    )
+ 
+        \begintext
+ 
+ 
+        The second equatorial radius for Larissa is not given in the 2000
+        report.  The available values are:
+ 
+            BODY807_RADII     = (   104     ---     89   )
+ 
+        For use within the SPICE system, we use only the mean radius.
+        \begindata
+ 
+        BODY807_RADII     = (   96      96     96   )
+        BODY808_RADII     = (  218     208    201   )
+ 
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Pluto
+ 
+     
+     Old values:
+ 
+        Values are from the 2003 IAU report. 
+
+        BODY901_RADII     = (  593     593    593   )
+             
+     Current values:
+ 
+        \begindata
+ 
+        BODY901_RADII     = (  605     605    605   )
+ 
+        \begintext
+ 
+
+
+Radii for Selected Comets and Asteroids
+--------------------------------------------------------
+
+
+19P/Borrelly
+
+
+     Current values:
+ 
+
+        The value in the data assignment below is the 
+        "effective radius."
+
+        The first principal axis length is 
+
+           3.5 km
+
+        The lengths of the other semi-axes are not provided
+        by [1].
+
+        \begindata
+ 
+        BODY1000005_RADII     = (  4.22   4.22   4.22  )
+ 
+        \begintext
+
+
+
+Halley
+
+
+     Current values:
+
+        \begindata
+ 
+        BODY1000036_RADII     = (  8.0   4.0   4.0  )
+ 
+        \begintext
+
+
+
+9P/Tempel 1
+
+
+     Current values:
+
+
+        The value in the data assignment below is the 
+        "effective radius."
+            
+        According to [1]:
+
+           The maximum and minimum radii are not properly 
+           the values of the principal semi-axes, they
+           are half the maximum and minimum values of the
+           diameter. Due to the large deviations from a
+           simple ellipsoid, they may not correspond with
+           measurements along the principal axes, or be
+           orthogonal to each other.
+
+        \begindata
+ 
+        BODY1000093_RADII     = (  3.0   3.0   3.0  )
+ 
+        \begintext
+
+
+81P/Wild 2
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY1000107_RADII     = (  2.7   1.9   1.5 )
+ 
+        \begintext
+
+
+Ceres
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000001_RADII     = ( 487.3  487.3  454.7 )
+ 
+        \begintext
+
+
+Vesta
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000004_RADII     = ( 289.  280.  229.  )
+ 
+        \begintext
+
+
+Toutatis
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2004179_RADII     = (  2.13  1.015  0.85  )
+ 
+        \begintext
+
+ 
+Kleopatra
+
+
+     Old values:
+
+        Values are from the 2003 report.
+
+ 
+        body2000216_radii     = (   108.5      47    40.5  )
+ 
+
+     Current values:
+ 
+ 
+        No values are provided in the 2006 report.
+
+
+Mathilde
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000253_RADII     = (  33.   24.   23.  )
+ 
+        \begintext
+       
+Eros
+ 
+
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY2000433_RADII     = (  17.0   5.5   5.5  )
+ 
+        \begintext
+
+
+Itokawa
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2025143_RADII     = (  0.535   0.294   0.209  )
+ 
+        \begintext
+
+
+
+Gaspra
+
+     
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY9511010_RADII     = (    9.1    5.2    4.4 )
+ 
+        \begintext
+
+        
+        
+        
+Ida
+
+     
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY2431010_RADII     = (   26.8   12.0    7.6 )
+ 
+        \begintext
+
+        
+
+===========================================================================
+End of file pck00009.tpc
+===========================================================================
+
+
+
diff --git a/tests/pytests/data/f704b28/vikingAddendum003.ti b/tests/pytests/data/f704b28/vikingAddendum003.ti
new file mode 100644
index 0000000..b84e8a8
--- /dev/null
+++ b/tests/pytests/data/f704b28/vikingAddendum003.ti
@@ -0,0 +1,23 @@
+\begindata
+INS-30001_TRANSX = ( 0.0, 0.0117647058823529, 0.0)
+INS-30001_TRANSY = ( 0.0, 0.0, 0.0117647058823529)
+INS-30001_ITRANSS = ( 0.0, 85.0, 0.0)
+INS-30001_ITRANSL = ( 0.0, 0.0, 85.0)
+
+INS-30002_TRANSX = ( 0.0, 0.0117647058823529, 0.0)
+INS-30002_TRANSY = ( 0.0, 0.0, 0.0117647058823529)
+INS-30002_ITRANSS = ( 0.0, 85.0, 0.0)
+INS-30002_ITRANSL = ( 0.0, 0.0, 85.0)
+
+\begintext
+These are the parameters for writing c-kernels.  Isis will create ck
+with the same frame endpoints as the mission ck. For Viking1 the ck
+instrument frame is VO2_PLATFORM (-30000) and the ck reference frame
+is B1950 (2) or J2000 (1), depending on the ck used.  The mdim2.0_rand
+ck is in J2000.
+
+\begindata
+INS-30001_CK_FRAME_ID=-30000
+INS-30001_CK_REFERENCE_ID=2
+INS-30002_CK_FRAME_ID=-30000
+INS-30002_CK_REFERENCE_ID=2
diff --git a/tests/pytests/data/f704b28/vo2_fict.tsc b/tests/pytests/data/f704b28/vo2_fict.tsc
new file mode 100644
index 0000000..f6c2ed1
--- /dev/null
+++ b/tests/pytests/data/f704b28/vo2_fict.tsc
@@ -0,0 +1,134 @@
+KPL/SCLK
+
+\beginlabel
+PDS_VERSION_ID               = PDS3
+RECORD_TYPE                  = STREAM
+RECORD_BYTES                 = "N/A"
+^SPICE_KERNEL                = "VO2_FICT.TSC"
+MISSION_NAME                 = VIKING
+SPACECRAFT_NAME              = "VIKING ORBITER 2"
+DATA_SET_ID                  = "VO1/VO2-M-SPICE-6-V1.0"
+KERNEL_TYPE_ID               = SCLK
+PRODUCT_ID                   = "VO2_FICT.TSC"
+PRODUCT_CREATION_TIME        = 2000-04-21T10:53:21
+PRODUCER_ID                  = "NAIF/JPL"
+MISSION_PHASE_NAME           = {
+                               PRIMARY_MISSION,
+                               EXTENDED_MISSION,
+                               CONTINUATION_MISSION
+                               }
+PRODUCT_VERSION_TYPE         = ACTUAL
+PLATFORM_OR_MOUNTING_NAME    = "N/A"
+START_TIME                   = "N/A"
+STOP_TIME                    = "N/A"
+SPACECRAFT_CLOCK_START_COUNT = "N/A"
+SPACECRAFT_CLOCK_STOP_COUNT  = "N/A"
+TARGET_NAME                  = MARS
+INSTRUMENT_NAME              = "N/A"
+NAIF_INSTRUMENT_ID           = "N/A"
+SOURCE_PRODUCT_ID            = "N/A"
+NOTE                         = "See comments in the file for details"
+OBJECT                       = SPICE_KERNEL
+  INTERCHANGE_FORMAT         = ASCII
+  KERNEL_TYPE                = CLOCK_COEFFICIENTS
+  DESCRIPTION                = "SCLK file implementing fictitious clock
+used to tag orientation data in the VO2 CK files. This SCLK file does NOT
+represent real Viking Orbiter 2 on-board clock but rather is a simple
+counter of milliseconds since 1 Jan 1976 00:00:00. "
+END_OBJECT                   = SPICE_KERNEL
+\endlabel
+
+
+Viking Orbiter 2 "fictitious" SCLK Kernel
+--------------------------------------------------------
+ 
+   This file contains the data necessary to convert between the
+   'fictitious' Viking Orbiter 2 on-board clock times used as tags
+   for pointing instances in Viking Orbiter 2 CK files and ephemeris
+   time.
+
+   NAIF suggests that you do not modify this file. If you do modify
+   it, be sure to indicate this in the `Version' section below.
+
+ 
+Version
+--------------------------------------------------------
+ 
+   Version 1.0.1 -- April 20, 2000
+   
+      Comments in the file were slightly reformatted and augmented.
+ 
+   Version 1.0.0 -- July 22, 1996
+ 
+ 
+Implementation notes
+--------------------------------------------------------
+ 
+   This SPICE SCLK file is constructed so that valid SCLK strings
+   are simply the number of seconds that have passed since the UTC
+   epoch 1 Jan 1976 00:00:00. Thus 288929292.827 simply represents
+   the epoch that occurs 288929292.827 seconds past the UTC epoch
+   1 Jan 1976.
+
+   For all time, the clock runs at the same rate as Terrestrial
+   Dynamical Time (TDT). There is only one partition for this clock.
+
+   You must load this file into the kernel pool before using any
+   of the SPICELIB SCLK routines. The code fragment
+
+      CALL LDPOOL ( < name of this file > )
+ 
+   performs this task. To convert between ET and UTC, you will also
+   need to load a leapseconds kernel. The additional call to LDPOOL,
+
+      CALL LDPOOL ( < name of your leapsecond file > )
+
+   will accomplish this. Note that you must supply the actual names
+   of the files used on your system as arguments to LDPOOL. Because
+   the file names are system dependent, we do not list them here.
+
+   For more information, consult your SPICELIB required reading
+   files. The following areas are covered:
+
+      SCLK system                     SCLK required reading
+      Time systems and conversion     TIME required reading
+      Kernel pool                     KERNEL required reading
+ 
+ 
+Kernel data
+--------------------------------------------------------
+ 
+   \begindata
+   
+      SCLK_KERNEL_ID                = (  @22-JUL-1996     )
+         
+      SCLK_DATA_TYPE_30             = (                 1 )
+         
+      SCLK01_TIME_SYSTEM_30         = (                 2 )
+      SCLK01_N_FIELDS_30            = (                 2 )
+      SCLK01_MODULI_30              = ( 10000000000  1000 )
+      SCLK01_OFFSETS_30             = (           0     0 )
+      SCLK01_OUTPUT_DELIM_30        = (                 1 )
+         
+      SCLK_PARTITION_START_30       = ( 0.0000000000000E+00 )
+      SCLK_PARTITION_END_30         = ( 1.00000000E+14      )
+      SCLK01_COEFFICIENTS_30        = ( 0.00000000E+00     
+                                        @01-JAN-1976-00:00:47.184 
+                                        1  )
+      
+   \begintext
+
+
+Contact Information
+--------------------------------------------------------
+
+   Contact NAIF node of the Planetary Data System if you have any
+   questions regarding this SCLK file.
+
+      Charles H. Acton, Jr
+      (818)-354-3869 
+      chuck.acton@jpl.nasa.gov
+      
+      Boris V. Semenov
+      (818)-354-8136 
+      boris.semenov@jpl.nasa.gov
diff --git a/tests/pytests/data/f704b28/vo2_fsc.tsc b/tests/pytests/data/f704b28/vo2_fsc.tsc
new file mode 100644
index 0000000..d3b30a1
--- /dev/null
+++ b/tests/pytests/data/f704b28/vo2_fsc.tsc
@@ -0,0 +1,193 @@
+KPL/SCLK
+
+\beginlabel
+PDS_VERSION_ID               = PDS3
+RECORD_TYPE                  = STREAM
+RECORD_BYTES                 = "N/A"
+^SPICE_KERNEL                = "VO2_FSC.TSC"
+MISSION_NAME                 = VIKING
+SPACECRAFT_NAME              = "VIKING ORBITER 2"
+DATA_SET_ID                  = "VO1/VO2-M-SPICE-6-V1.0"
+KERNEL_TYPE_ID               = SCLK
+PRODUCT_ID                   = "VO2_FSC.TSC"
+PRODUCT_CREATION_TIME        = 2000-04-21T10:53:21
+PRODUCER_ID                  = "NAIF/JPL"
+MISSION_PHASE_NAME           = {
+                               PRIMARY_MISSION,
+                               EXTENDED_MISSION,
+                               CONTINUATION_MISSION
+                               }
+PRODUCT_VERSION_TYPE         = ACTUAL
+PLATFORM_OR_MOUNTING_NAME    = "N/A"
+START_TIME                   = "N/A"
+STOP_TIME                    = "N/A"
+SPACECRAFT_CLOCK_START_COUNT = "N/A"
+SPACECRAFT_CLOCK_STOP_COUNT  = "N/A"
+TARGET_NAME                  = MARS
+INSTRUMENT_NAME              = "N/A"
+NAIF_INSTRUMENT_ID           = "N/A"
+SOURCE_PRODUCT_ID            = "N/A"
+NOTE                         = "See comments in the file for details"
+OBJECT                       = SPICE_KERNEL
+  INTERCHANGE_FORMAT         = ASCII
+  KERNEL_TYPE                = CLOCK_COEFFICIENTS
+  DESCRIPTION                = "SCLK file containing linear piecewise
+function representing VO2 FSC on-board clock. This function was generated as
+the result of VO2 image time tags restoration. "
+END_OBJECT                   = SPICE_KERNEL
+\endlabel
+
+
+Viking Orbiter 2 Reconstructed Frame Start Count (FSC) SCLK file
+--------------------------------------------------------
+
+   This file contain data necessary to convert a Viking Orbiter 2
+   FSC count to the ET time corresponding to it. These data are
+   based on the results of VO2 image times reconstruction done at
+   NAIF/JPL. The process of this reconstruction is described in
+   detail in the "VO Image Time Reconstruction" document.
+
+   Note that the main purpose of this file is to store the
+   reconstructed FSC counter; the on-board clock defined by the
+   function in this file was not used to time tag any of the
+   orientation data in CK files.
+
+   To avoid confusion with the other VO2 clock used for time tagging,
+   the FSC on-board clock in this file was assigned the NAIF ID
+   code -30999.
+   
+
+Version
+--------------------------------------------------------
+ 
+   Version 1.0.1 -- April 20, 2000
+   
+      Comments in the file were slightly reformatted and augmented.
+ 
+   Version 1.0.0 -- July 22, 1996 
+     
+
+Implementation notes
+--------------------------------------------------------
+ 
+   This SPICE SCLK file is constructed so that valid SCLK strings
+   are the eight digit VO2 FSC count associated with each VO2 image.
+   Note that the actual "image time" (the time of the beginning,
+   middle or the end of exposure) has a significant offset from
+   the FSC tick start time. This offset depends on the exposure
+   duration and is described in the "VO Image Time Reconstruction"
+   document.
+
+   You must load this file into the kernel pool before using any
+   of the SPICELIB SCLK routines. The code fragment
+
+      CALL LDPOOL ( < name of this file > )
+ 
+   performs this task. To convert between ET and UTC, you will also
+   need to load a leapseconds kernel. The additional call to LDPOOL,
+
+      CALL LDPOOL ( < name of your leapsecond file > )
+ 
+   will accomplish this. Note that you must supply the actual names
+   of the files used on your system as arguments to LDPOOL. Because
+   the file names are system dependent, we do not list them here.
+
+   For more information, consult your SPICELIB required reading
+   files. The following areas are covered:
+
+      SCLK system                     SCLK required reading
+      Time systems and conversion     TIME required reading
+      Kernel pool                     KERNEL required reading
+
+
+Kernel data
+--------------------------------------------------------
+
+\begindata
+
+ SCLK_KERNEL_ID           = ( @22-JUL-1996 )
+
+ SCLK_DATA_TYPE_30999        = ( 1 )
+ SCLK01_TIME_SYSTEM_30999    = ( 2 )
+ SCLK01_N_FIELDS_30999       = ( 1 )
+ SCLK01_MODULI_30999         = ( 80000000 )
+ SCLK01_OFFSETS_30999        = ( 46442015 )
+ SCLK01_OUTPUT_DELIM_30999   = ( 1 )
+
+ SCLK_PARTITION_START_30999  = ( 
+                                        0 
+                                   357985 
+                                   777985 
+                                  1057985
+                                  1268246
+                                  1457985
+                                  2581493
+                                  4701667
+                                  5412787
+                                  6557985
+                                  6810335
+                                  7107985
+                                  9390838
+                                 10007985
+                                 10607985
+                                 11107985
+                                 12557985
+                                            )
+
+ SCLK_PARTITION_END_30999    = ( 
+                                   357985 
+                                   777985 
+                                  1057985
+                                  1268246
+                                  1457985
+                                  2581493
+                                  4701667
+                                  5412787
+                                  6557985
+                                  6810335
+                                  7107985
+                                  9390838
+                                 10007985
+                                 10607985
+                                 11107985
+                                 12557985
+                                 13843304
+                                            )
+
+ SCLK01_COEFFICIENTS_30999   = ( 
+
+        0       -738643373.631604  4.480001294
+        357985  -737039600.324536  4.480001238
+        777985  -735157999.769837  4.480001240
+        1057985 -733903599.385587  4.480001244
+        1268246 -732961629.770622  4.480001297
+        1457985 -732111598.747130  4.480001301
+        2581493 -727078280.882439  4.480001764
+        4701667 -717579897.536827  4.480001764
+        5412787 -714394078.461940  4.480001817
+        6557985 -709263589.346238  4.480001599
+        6810335 -708133060.592218  4.480001867
+        7107985 -706799588.012369  4.480001868
+        9390838 -696572402.934857  4.480001454
+       10007985 -693807583.640654  4.480001937
+       10607985 -691119582.502621  4.480001298
+       11107985 -688879581.719291  4.480001364
+       12557985 -682383579.531742  4.480001393
+                                                 )
+
+\begintext
+
+
+Contact Information
+--------------------------------------------------------
+
+   Contact NAIF node of the Planetary Data System if you have any
+   questions regarding this SCLK file.
+
+      Charles H. Acton, Jr
+      (818)-354-3869 
+      chuck.acton@jpl.nasa.gov
+      
+      Boris V. Semenov
+      (818)-354-8136 
+      boris.semenov@jpl.nasa.gov
diff --git a/tests/pytests/data/f704b28/vo2_sedr_ck2_0_sliced_-30000.xc b/tests/pytests/data/f704b28/vo2_sedr_ck2_0_sliced_-30000.xc
new file mode 100644
index 0000000..33400df
--- /dev/null
+++ b/tests/pytests/data/f704b28/vo2_sedr_ck2_0_sliced_-30000.xc
@@ -0,0 +1,691 @@
+DAFETF NAIF DAF ENCODED TRANSFER FILE
+'DAF/CK  '
+'2'
+'6'
+'VO2 PLATFORM ATTITUDE; CREATED BY BVS/NAIF; 2006-FEB-09     '
+BEGIN_ARRAY 1 670
+'VO2 ATT. BASED ON GEM AND SEDR FILES    '
+'12CAEC0F81^A'
+'12CB16DD0C^A'
+'-7530'
+'2'
+'2'
+'1'
+670
+'605119A622EED4^-1'
+'-2FEA9A6DF74D3^0'
+'FB2C40430DD82^0'
+'AC4E997ABF6BA^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'255A22C8133C18^0'
+'-3261BEC01642EA^0'
+'F802BA3ECE62C^0'
+'9A78BF8F157808^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'25C664C87C4C64^0'
+'-32644F54805834^0'
+'F7F2FF8117D79^0'
+'988C7B7F485C18^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'26E657FCC6F154^0'
+'-3270DBFC951E32^0'
+'F7C5C769FE9498^0'
+'957A128A1F1DD^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'281C7686E4208^0'
+'-3276FF057292D6^0'
+'F795B04AE0A9A^0'
+'911004AEA0519^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'29295601B59754^0'
+'-327E2D06ED940E^0'
+'F769B23D4D02^0'
+'8E469D15445628^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2A43AED68DCEE8^0'
+'-3286576B74CD46^0'
+'F73AC149226658^0'
+'8A22E15E50A9^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2B528A07F4DA14^0'
+'-3286ED81A77D24^0'
+'F70D8EAE7745B^0'
+'86D65496B65F8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2C6DAFD92DEDD^0'
+'-3290A8D8B0211E^0'
+'F6DB337C87C45^0'
+'833BC222576A7^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2D897A2B28DAD4^0'
+'-32998CE0733EBC^0'
+'F6A78B1C02BA4^0'
+'7F9CF083F641D8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2EADC4DFDE7BE6^0'
+'-329B6D0540A662^0'
+'F67252E7722818^0'
+'7C083754CAB008^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2FB4484B661ECE^0'
+'-32A2AB6A689B94^0'
+'F64036651B577^0'
+'78ADEECD4A8E8C^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'30D577F991E49E^0'
+'-32ABD6106CEAFE^0'
+'F60764B83162E^0'
+'74FF310118195^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'31DB407AACE2AA^0'
+'-32B39E800AFD82^0'
+'F5D2D78A73867^0'
+'71A0D77648098^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'32FF85ED0136FC^0'
+'-32B3E3C5ED1F5E^0'
+'F5986FD78B73E8^0'
+'6E09CA32CB1FE^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3404EB3A576964^0'
+'-32BB07C4CC8B9C^0'
+'F56199136F43C^0'
+'6AADE34475C1E4^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'351EE0FBDBD18A^0'
+'-32C25468E5D6AA^0'
+'F525338249649^0'
+'670E73A956C52C^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'36376D0950591E^0'
+'-32C6E6AA4811E8^0'
+'F4E8844C2448D8^0'
+'62E765478EBE58^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'374EF4190707AA^0'
+'-32CB47B2DBA8C2^0'
+'F4AAB69175DC^0'
+'5EC296D24CB4B^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3852D26BE981C4^0'
+'-32D110BAED73BA^0'
+'F46F79AC9C635^0'
+'5B68678AE96CF^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'39594FCEC43A2E^0'
+'-32DC8786FD6476^0'
+'F430E0E9A9B5C^0'
+'5918E3DC00A75^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3A5C2659864072^0'
+'-32DF560DB69114^0'
+'F3F45456ECA6E^0'
+'55342E8F6D0F08^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3B7A678835A11E^0'
+'-32E5E3FD5A562A^0'
+'F3AF0DBBB1F4C^0'
+'51805A7EB18984^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2368F7642AC718^0'
+'-32460A395E72DA^0'
+'F84EC390DA0E7^0'
+'9E63895D90BA2^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'23F6FB1D086E44^0'
+'-3243D7AB9B9EC4^0'
+'F83BD452A03D6^0'
+'9CC26083716D98^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'25179A2C603786^0'
+'-324CDCE2D3A36A^0'
+'F81163FFDA2D4^0'
+'99C3400940FE48^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'261BF14EFBE922^0'
+'-3253009FA165C^0'
+'F7EAA02E907488^0'
+'969435DC41B3A^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2732017C9EB166^0'
+'-3254D5DDB9A738^0'
+'F7C0E4E72EF958^0'
+'933CF66D7A2678^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'284F612825334C^0'
+'-326049AA070FA^0'
+'F792DF5BF08D88^0'
+'8FA41D0AD07EB8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'296429E2F43BAE^0'
+'-32618CEFA11856^0'
+'F766D74F6261A^0'
+'8C4EE1E38AC63^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2A60E56A46936^0'
+'-326026F0F342AC^0'
+'F73E51E85A6C3^0'
+'88BF003F529BC8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2B7E7483CB8C8C^0'
+'-326C692BD8F4E6^0'
+'F70BE2CDD6C7B^0'
+'85AEE3ECEC5C68^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2C923E95CD4B0C^0'
+'-326E0C35310ACA^0'
+'F6DC25E842D26^0'
+'825F12A330453^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2D90B40C23197^0'
+'-326DB730DB339E^0'
+'F6AF5508B809B^0'
+'7F545EE6926CE^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2EC2B77FEEF1F6^0'
+'-32779B06F64CC6^0'
+'F675FE9141099^0'
+'7B711A66EB9CA^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2FC652B2E5FE9C^0'
+'-327785830802^0'
+'F645BF01C9185^0'
+'785307463C60EC^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'30C4FF9A67699C^0'
+'-327826754334A8^0'
+'F615260AD13C9^0'
+'754755388BE70C^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'31C23CA87D583E^0'
+'-3286978D089FA8^0'
+'F5E10EE127181^0'
+'71E409413C3438^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'32D6150E387758^0'
+'-32873623561544^0'
+'F5A9FE25F16608^0'
+'6E933863DD581C^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'33D3F07BFE1AE8^0'
+'-3285E996EFD878^0'
+'F5768B60CD4A08^0'
+'6B88EE9E4A5434^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'34EDA42E8381BE^0'
+'-328DDB8EAE5C62^0'
+'F53A53810D65F^0'
+'67EB5360F4FCA8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'35FFE777CDD7B8^0'
+'-328CCA3B5B1D1A^0'
+'F5001ADA00533^0'
+'649C5BBC5F95DC^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'37120DCD3CB1B^0'
+'-328BD566C57E72^0'
+'F4C493FBBFD6B8^0'
+'61530359708938^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3812075D155518^0'
+'-328E517392AB2^0'
+'F48B2C025F5158^0'
+'5E220BEE33C674^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'39280D43C403E4^0'
+'-3290F1BF11D1A4^0'
+'F44B89A9C180A^0'
+'5AADBCC3B64AEC^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'218596EB136AD4^0'
+'-323691070A00E^0'
+'F89059D482F07^0'
+'A5732A1567FAA8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'22B5EF15F1C0A8^0'
+'-32441EC0270C1^0'
+'F86655EEBDC57^0'
+'A1A263198514A^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'23D859A93D0A6C^0'
+'-324AA62AB76782^0'
+'F83E13534575^0'
+'9E07ABE6D0E208^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'24D397C3D40C1C^0'
+'-3250CA973950C8^0'
+'F819FF0C842F8^0'
+'9AEF7A2ED13F98^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'25F1A5826BC234^0'
+'-325B9665132A72^0'
+'F7EEEB77B0EB1^0'
+'975173405B068^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'272540F2183D6E^0'
+'-3267FC463C06DC^0'
+'F7BEE5F74F8D68^0'
+'937011030F82C^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'284279258E85BC^0'
+'-3271C8EF728E7C^0'
+'F7914BF96DCBD^0'
+'8FD5F896A9D68^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2948A3CA97B0BC^0'
+'-327B3D07AC773C^0'
+'F766166640FF3^0'
+'8C83414611B89^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2A63154E760076^0'
+'-3282862EE5FDAA^0'
+'F737233AEAA508^0'
+'885FB6D5814998^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2B6A9CC0EE727C^0'
+'-328E8FFBF22834^0'
+'F7087340310408^0'
+'8595737FF018B8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2C86245C38A3DE^0'
+'-32977F431A6F7A^0'
+'F6D60F8DC0167^0'
+'81F911BA041BC^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2D8B4F52B76116^0'
+'-329D9937D12966^0'
+'F6A725B211B6E^0'
+'7E1C482A202BB8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2EA8FB221CD152^0'
+'-32A93260D9EE4A^0'
+'F670EB0551AA7^0'
+'7B00394F48AF78^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'2FC9F9C33613C2^0'
+'-32B234162CB2AC^0'
+'F6397A290D44F8^0'
+'774F581B6325F8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'30D0426F1B2C32^0'
+'-32B9911F9A0EE6^0'
+'F606186E24B0B^0'
+'73F20EADC9DB14^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'31D8CBF1BC1978^0'
+'-32BB18DD9CC0A8^0'
+'F5D218D4557AF8^0'
+'70FA4119CD252C^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'32E9E75BDF6A88^0'
+'-32C09A894676B8^0'
+'F59AA5E33DB4A^0'
+'6D40284E140824^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'34048F1A73D2AE^0'
+'-32C89A6DDC0734^0'
+'F55F528DB0327^0'
+'69A024BEA28EE8^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'3508FA30A9A642^0'
+'-32CF9D0C9C369^0'
+'F527854D13A55^0'
+'6645153B9CB93C^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'362279AC26C972^0'
+'-32D7128D1AC78C^0'
+'F4E9E5A4DD7EA8^0'
+'62A772D37F3A1C^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'373BF7AA49B714^0'
+'-32DD8DE365CA68^0'
+'F4AB1BCE7724E8^0'
+'5F02AEF7FA0608^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'383FD67C208EAE^0'
+'-32E46EDD708C7A^0'
+'F46FB96783E95^0'
+'5BA81149A6C104^-1'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'12CB02B46BFFFF^A'
+'12CB0406B5FFFF^A'
+'12CB041849FFFF^A'
+'12CB0429B4FFFF^A'
+'12CB043B4A0002^A'
+'12CB044CB8FFFE^A'
+'12CB045E49FFFC^A'
+'12CB046FB9^A'
+'12CB048149FFFF^A'
+'12CB0492B90003^A'
+'12CB04A44AFFFD^A'
+'12CB04B5BA^A'
+'12CB04C74AFFFF^A'
+'12CB04D8BA0003^A'
+'12CB04EA49FFFF^A'
+'12CB04FBB90002^A'
+'12CB050D5C0002^A'
+'12CB051EB8FFFD^A'
+'12CB05305C0004^A'
+'12CB0541C10001^A'
+'12CB05535BFFFF^A'
+'12CB0564C10003^A'
+'12CB05765C0001^A'
+'12CB0771B5FFFF^A'
+'12CB078349FFFF^A'
+'12CB0794B4FFFF^A'
+'12CB07A64A0002^A'
+'12CB07B7B50001^A'
+'12CB07C949FFFC^A'
+'12CB07DAB9^A'
+'12CB07EC49FFFF^A'
+'12CB07FDB90003^A'
+'12CB080F4AFFFD^A'
+'12CB0820BA^A'
+'12CB08324AFFFF^A'
+'12CB0843BA0003^A'
+'12CB085549FFFF^A'
+'12CB0866B90002^A'
+'12CB08785C0002^A'
+'12CB0889C0FFFE^A'
+'12CB089B5C0004^A'
+'12CB08ACC10001^A'
+'12CB08BE5BFFFF^A'
+'12CB08CFC10003^A'
+'12CB08E15C0001^A'
+'12CB0AFFB4FFFF^A'
+'12CB0B1148FFFF^A'
+'12CB0B22B3FFFE^A'
+'12CB0B3449FFFC^A'
+'12CB0B45B7FFFD^A'
+'12CB0B5749FFFF^A'
+'12CB0B68B8^A'
+'12CB0B7A48FFFE^A'
+'12CB0B8BB80002^A'
+'12CB0B9D490001^A'
+'12CB0BAEB7FFFD^A'
+'12CB0BC049FFFF^A'
+'12CB0BD1B90002^A'
+'12CB0BE35C0002^A'
+'12CB0BF4520002^A'
+'12CB0C05DF0004^A'
+'12CB0C176BFFFE^A'
+'12CB0C28F7FFFD^A'
+'12CB0C3A84FFFF^A'
+'12CB0C4C120001^A'
+'12CB0C5D9F0003^A'
+'12CB0C6F2BFFFD^A'
+'12CB02BC3BFFFF^A'
+'12CB040E85FFFF^A'
+'12CB042019FFFF^A'
+'12CB043184FFFF^A'
+'12CB04431A0002^A'
+'12CB045488FFFE^A'
+'12CB046619FFFC^A'
+'12CB047789^A'
+'12CB048919FFFF^A'
+'12CB049A890003^A'
+'12CB04AC1AFFFD^A'
+'12CB04BD8A^A'
+'12CB04CF1AFFFF^A'
+'12CB04E08A0003^A'
+'12CB04F219FFFF^A'
+'12CB0503890002^A'
+'12CB05152C0002^A'
+'12CB052688FFFD^A'
+'12CB05382C0004^A'
+'12CB0549910001^A'
+'12CB055B2BFFFF^A'
+'12CB056C910003^A'
+'12CB057E2C0001^A'
+'12CB077985FFFF^A'
+'12CB078B19FFFF^A'
+'12CB079C84FFFF^A'
+'12CB07AE1A0002^A'
+'12CB07BF850001^A'
+'12CB07D119FFFC^A'
+'12CB07E289^A'
+'12CB07F419FFFF^A'
+'12CB0805890003^A'
+'12CB08171AFFFD^A'
+'12CB08288A^A'
+'12CB083A1AFFFF^A'
+'12CB084B8A0003^A'
+'12CB085D19FFFF^A'
+'12CB086E890002^A'
+'12CB08802C0002^A'
+'12CB089190FFFE^A'
+'12CB08A32C0004^A'
+'12CB08B4910001^A'
+'12CB08C62BFFFF^A'
+'12CB08D7910003^A'
+'12CB08E92C0001^A'
+'12CB0B0784FFFF^A'
+'12CB0B1918FFFF^A'
+'12CB0B2A83FFFE^A'
+'12CB0B3C19FFFC^A'
+'12CB0B4D87FFFD^A'
+'12CB0B5F19FFFF^A'
+'12CB0B7088^A'
+'12CB0B8218FFFE^A'
+'12CB0B93880002^A'
+'12CB0BA5190001^A'
+'12CB0BB687FFFD^A'
+'12CB0BC819FFFF^A'
+'12CB0BD9890002^A'
+'12CB0BEB2C0002^A'
+'12CB0BFC220002^A'
+'12CB0C0DAF0004^A'
+'12CB0C1F3BFFFE^A'
+'12CB0C30C7FFFD^A'
+'12CB0C4254FFFF^A'
+'12CB0C53E20001^A'
+'12CB0C656F0003^A'
+'12CB0C76FBFFFD^A'
+END_ARRAY 1 670
+TOTAL_ARRAYS 1
+ ~NAIF/SPC BEGIN COMMENTS~
+This CK is for testing with the image: /home/pgiroux/Desktop/f704b28.cub
+
+This CK was generated using the following command: {}
+ ~NAIF/SPC END COMMENTS~
diff --git a/tests/pytests/data/f704b28/vo2_v10.tf b/tests/pytests/data/f704b28/vo2_v10.tf
new file mode 100644
index 0000000..0cff34e
--- /dev/null
+++ b/tests/pytests/data/f704b28/vo2_v10.tf
@@ -0,0 +1,470 @@
+KPL/FK
+
+Viking Orbiter 2 Frames Kernel
+===============================================================================
+
+   This frame kernel contains the complete set of frame definitions for
+   the Viking Orbiter 2 (VO2) spacecraft including definitions for the
+   spacecraft frame, instrument platform frame, and science instrument
+   frames.
+
+
+Version and Date
+-------------------------------------------------------------------------------
+
+   Version 1.0 -- December 1, 2005 -- Boris Semenov, NAIF
+
+      Initial Release.
+
+
+References
+-------------------------------------------------------------------------------
+
+   1. ``Frames Required Reading''
+
+   2. ``Kernel Pool Required Reading''
+
+   3. ``C-Kernel Required Reading''      
+
+   4. VO2 Supplemental Experiment Data Record (SEDR) file, 1976-1980.
+ 
+   5. Thomas C. Duxbury/JPL, March-July, 1996
+
+
+Contact Information
+-------------------------------------------------------------------------------
+
+   Boris V. Semenov, NAIF/JPL, (818)-354-8136, Boris.Semenov@jpl.nasa.gov
+
+
+Implementation Notes
+-------------------------------------------------------------------------------
+
+   This file is used by the SPICE system as follows: programs that make
+   use of this frame kernel must `load' the kernel, normally during
+   program initialization. The SPICELIB/CSPICE/ICY routine FURNSH loads
+   a kernel file into the pool as shown below.
+
+      CALL FURNSH ( 'frame_kernel_name' )           SPICELIB/FORTRAN
+
+      furnsh_c ( "frame_kernel_name" );             CSPICE/C
+
+      cspice_furnsh, "frame_kernel_name"            ICY/IDL
+
+   This file was created and may be updated with a text editor or word
+   processor.
+
+
+VO2 Frames
+-------------------------------------------------------------------------------
+
+   The following VO2 frames are defined in this kernel file:
+
+           Name                  Relative to           Type       NAIF ID
+      ======================  ===================  ============   =======
+
+   Spacecraft frame:
+   -----------------
+      VO2_SPACECRAFT          rel.to B1950         CK             -30900
+
+   Instrument Platform frame:
+   --------------------------
+      VO2_PLATFORM            rel.to B1950         CK             -30000
+
+   Science Instrument frames:
+   --------------------------
+      VO2_VISA                rel.to PLATFORM      FIXED          -30001
+      VO2_VISA_TD             rel.to PLATFORM      FIXED          -30011
+      VO2_VISB                rel.to PLATFORM      FIXED          -30002
+      VO2_VISB_TD             rel.to PLATFORM      FIXED          -30012
+      VO2_IRTM                rel.to PLATFORM      FIXED          -30003
+      VO2_MAWD                rel.to PLATFORM      FIXED          -30004
+
+
+VO2 Frames Hierarchy
+-------------------------------------------------------------------------------
+
+   The diagram below shows VO2 frames hierarchy:
+
+
+                               "B1950" INERTIAL
+        +-----------------------------------------------------------+
+        |                   |                   |                   |
+        | <--pck            | <--ck             | <--ck             | <--pck
+        |                   |                   |                   | 
+        V                   V                   |                   V
+    "IAU_MARS"      "V01_SPACECRAFT"            |              "IAU_EARTH"
+    -----------     ----------------            |              ------------
+                                                |
+                                                |
+                                                V
+                                          "VO2_PLATFORM"                       
+        +---------------------------------------------------------+
+        |                 |                     |     |     |     |
+        | <--fixed        | <--fixed   fixed--> |     |     |     | <--fixed
+        |                 |                     |     |     |     |
+        V                 V                     V     |     |     V
+    "VO2_IRTM"        "VO2_MAWD"          "VO2_VISA"  |     | "VO2_VISB"
+    ----------        ----------          ----------  |     | ----------
+                                                      |     |
+                                                      |     |
+                                             fixed--> |     | <--fixed
+                                                      |     |
+                                                      V     V
+                                          "VO2_VISA_TD"     "VO2_VISB_TD"
+                                          -------------     -------------
+
+
+Spacecraft Bus Frame
+-------------------------------------------------------------------------------
+
+   The spacecraft frame is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the spacecraft bus frame:
+
+      [TBD]
+
+   Since the S/C bus attitude with respect to an inertial frame is
+   provided by a C kernel (see [3] for more information), this frame is
+   defined as a CK-based frame.
+
+   \begindata
+
+      FRAME_VO2_SPACECRAFT     = -30900
+      FRAME_-30900_NAME        = 'VO2_SPACECRAFT'
+      FRAME_-30900_CLASS       = 3
+      FRAME_-30900_CLASS_ID    = -30900
+      FRAME_-30900_CENTER      = -30
+      CK_-30900_SCLK           = -30
+      CK_-30900_SPK            = -30
+
+   \begintext
+
+
+Instrument Platform Frame
+-------------------------------------------------------------------------------
+
+   The instrument platform frame is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the instrument platform frame:
+
+      [TBD]
+
+   Since the platform attitude with respect to an inertial frame is
+   provided by a C kernel (see [3] for more information), this frame is
+   defined as a CK-based frame.
+
+   \begindata
+
+      FRAME_VO2_PLATFORM       = -30000
+      FRAME_-30000_NAME        = 'VO2_PLATFORM'
+      FRAME_-30000_CLASS       = 3
+      FRAME_-30000_CLASS_ID    = -30000
+      FRAME_-30000_CENTER      = -30
+      CK_-30000_SCLK           = -30
+      CK_-30000_SPK            = -30
+
+   \begintext
+
+
+VISA and VISB Frames
+-------------------------------------------------------------------------------
+
+   The frames for the Visual Imaging Subsystem Camera A (VISA) and
+   Camera B (VISB) -- VO2_VISA and VO2_VISB -- are defined as follows:
+
+      -  Z axis is along the camera boresight;
+         
+      -  X axis is along detector lines and points toward the right 
+         side of the image;
+         
+      -  Y axis completes the right hand frame;
+      
+      -  the origin of this frame is located at the camera focal point.
+
+   This diagram illustrates the camera frames:
+
+      [TBD]
+
+   Since the cameras were rigidly mounted on the instrument platform
+   their frames are defined as fixed offset frames with respect to the
+   platform frame.
+
+   The camera orientation with respect to the platform was specified in
+   [4] as the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the following angle values for each of the two cameras:
+
+      VISA:
+
+         CROSS_CONE         =  -0.679330, deg
+         CONE               =  -0.023270, deg
+         RASTER_ORIENTATION =  89.880691, deg
+
+      VISB:
+
+         CROSS_CONE         =   0.663000, deg
+         CONE               =  -0.044000, deg
+         RASTER_ORIENTATION =  89.663790, deg
+
+   These angles are used in the frame definition below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the camera to the platform frame -- see [1].)
+
+   \begindata
+
+      FRAME_VO2_VISA           = -30001
+      FRAME_-30001_NAME        = 'VO2_VISA'
+      FRAME_-30001_CLASS       = 4
+      FRAME_-30001_CLASS_ID    = -30001
+      FRAME_-30001_CENTER      = -30
+      TKFRAME_-30001_SPEC      = 'ANGLES'
+      TKFRAME_-30001_RELATIVE  = 'VO2_PLATFORM'
+      TKFRAME_-30001_ANGLES    = ( -0.679330, 0.023270, -89.880691 )
+      TKFRAME_-30001_AXES      = (  1,        2,          3        )
+      TKFRAME_-30001_UNITS     = 'DEGREES'
+
+      FRAME_VO2_VISB           = -30002
+      FRAME_-30002_NAME        = 'VO2_VISB'
+      FRAME_-30002_CLASS       = 4
+      FRAME_-30002_CLASS_ID    = -30002
+      FRAME_-30002_CENTER      = -30
+      TKFRAME_-30002_SPEC      = 'ANGLES'
+      TKFRAME_-30002_RELATIVE  = 'VO2_PLATFORM'
+      TKFRAME_-30002_ANGLES    = (  0.663000, 0.044000, -89.663790 )
+      TKFRAME_-30002_AXES      = (  1,        2,          3        )
+      TKFRAME_-30002_UNITS     = 'DEGREES'
+
+   \begintext
+
+   Thomas Duxbury provided a different set of angle values for the cameras
+   (see [5]):
+
+      VISA:
+
+         CROSS_CONE         =  -0.679300, deg
+         CONE               =  -0.023300, deg
+         RASTER_ORIENTATION =  89.880700, deg
+      
+      VISB:
+
+         CROSS_CONE         =   0.663000, deg
+         CONE               =  -0.044000, deg
+         RASTER_ORIENTATION =  89.663800, deg
+
+   To make this alignment solution available, two more frames parallel
+   to the camera frames and including the ``_TB'' suffix in the name
+   and defined below.
+ 
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the camera to the platform frame -- see [1].)
+
+   \begindata
+
+      FRAME_VO1_VISA_TD        = -30011
+      FRAME_-30011_NAME        = 'VO1_VISA_TD'
+      FRAME_-30011_CLASS       = 4
+      FRAME_-30011_CLASS_ID    = -30011
+      FRAME_-30011_CENTER      = -30
+      TKFRAME_-30011_SPEC      = 'ANGLES'
+      TKFRAME_-30011_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-30011_ANGLES    = ( -0.679300, 0.023300, -89.880700 )
+      TKFRAME_-30011_AXES      = (  1,        2,          3        )
+      TKFRAME_-30011_UNITS     = 'DEGREES'
+
+      FRAME_VO1_VISB_TD        = -30012
+      FRAME_-30012_NAME        = 'VO1_VISB_TD'
+      FRAME_-30012_CLASS       = 4
+      FRAME_-30012_CLASS_ID    = -30012
+      FRAME_-30012_CENTER      = -30
+      TKFRAME_-30012_SPEC      = 'ANGLES'
+      TKFRAME_-30012_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-30012_ANGLES    = (  0.663000, 0.044000, -89.663800 )
+      TKFRAME_-30012_AXES      = (  1,        2,          3        )
+      TKFRAME_-30012_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+IRTM Frame
+-------------------------------------------------------------------------------
+
+   The frame for the Infrared Thermal Mapper -- VO2_IRTM -- is defined 
+   as follows:
+
+      [TBD]
+
+   This diagram illustrates the IRTM frame:
+
+      [TBD]
+
+   Since the IRTM instrument was rigidly mounted on the instrument
+   platform its frame is defined as fixed offset frames with respect to
+   the platform frame.
+
+   The instrument orientation with respect to the platform can be
+   specified using the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the nominal angle values:
+
+      CROSS_CONE         =   0.0, deg
+      CONE               =   0.0, deg
+      RASTER_ORIENTATION =  90.0, deg
+
+   These angles are used in the frame definition below.
+ 
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the instrument to the platform frame -- see
+   [1].)
+
+   \begindata
+
+      FRAME_VO2_IRTM           = -30003
+      FRAME_-30003_NAME        = 'VO2_IRTM'
+      FRAME_-30003_CLASS       = 4
+      FRAME_-30003_CLASS_ID    = -30003
+      FRAME_-30003_CENTER      = -30
+      TKFRAME_-30003_SPEC      = 'ANGLES'
+      TKFRAME_-30003_RELATIVE  = 'VO2_PLATFORM'
+      TKFRAME_-30003_ANGLES    = (  0.0, 0.0, -90.0 )
+      TKFRAME_-30003_AXES      = (  1,   2,     3   )
+      TKFRAME_-30003_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+MAWD Frame
+-------------------------------------------------------------------------------
+
+   The frame for the Mars Atmosphere Water Detector (MAWD) -- VO2_MAWD
+   -- is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the MAWD frame:
+
+      [TBD]
+
+   Since the MAWD instrument was rigidly mounted on the instrument
+   platform its frame is defined as fixed offset frames with respect to
+   the platform frame.
+
+   The instrument orientation with respect to the platform can be
+   specified using the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the nominal angle values:
+
+      CROSS_CONE         =   0.0, deg
+      CONE               =   0.0, deg
+      RASTER_ORIENTATION =  90.0, deg
+
+   These angles are used in the frame definition below.
+ 
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the instrument to the platform frame -- see
+   [1].)
+
+   \begindata
+
+      FRAME_VO2_MAWD           = -30004
+      FRAME_-30004_NAME        = 'VO2_MAWD'
+      FRAME_-30004_CLASS       = 4
+      FRAME_-30004_CLASS_ID    = -30004
+      FRAME_-30004_CENTER      = -30
+      TKFRAME_-30004_SPEC      = 'ANGLES'
+      TKFRAME_-30004_RELATIVE  = 'VO2_PLATFORM'
+      TKFRAME_-30004_ANGLES    = (  0.0, 0.0, -90.0 )
+      TKFRAME_-30004_AXES      = (  1,   2,     3   )
+      TKFRAME_-30004_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+Viking Orbiter 2 NAIF ID Codes -- Definition Section
+========================================================================
+
+   This section contains name to NAIF ID mappings for the VO2. Once the
+   contents of this file is loaded into the KERNEL POOL, these mappings
+   become available within SPICE, making it possible to use names
+   instead of ID code in the high level SPICE routine calls.
+
+   Spacecraft and its structures: 
+   ------------------------------
+
+      VIKING ORBITER 2           -30
+      VO2                        -30
+
+      VO2_SPACECRAFT_BUS         -30900
+      VO2_SC_BUS                 -30900
+      VO2_SPACECRAFT             -30900
+
+      VO2_INSTRUMENT_PLATFORM    -30000
+      VO2_PLATFORM               -30000
+
+   Science Instruments:
+   --------------------
+
+      VO2_VISA                   -30001
+      VO2_VISB                   -30002
+
+      VO2_IRTM                   -30003
+
+      VO2_MAWD                   -30004
+
+   The mappings summarized in this table are implemented by the keywords 
+   below.
+
+   \begindata
+
+      NAIF_BODY_NAME += ( 'VIKING ORBITER 2'          )
+      NAIF_BODY_CODE += ( -30                         )
+
+      NAIF_BODY_NAME += ( 'VO2'                       )
+      NAIF_BODY_CODE += ( -30                         )
+
+      NAIF_BODY_NAME += ( 'VO2_SPACECRAFT_BUS'        )
+      NAIF_BODY_CODE += ( -30900                      )
+
+      NAIF_BODY_NAME += ( 'VO2_SC_BUS'                )
+      NAIF_BODY_CODE += ( -30900                      )
+
+      NAIF_BODY_NAME += ( 'VO2_SPACECRAFT'            )
+      NAIF_BODY_CODE += ( -30900                      )
+
+      NAIF_BODY_NAME += ( 'VO2_INSTRUMENT_PLATFORM'   )
+      NAIF_BODY_CODE += ( -30000                      )
+
+      NAIF_BODY_NAME += ( 'VO2_PLATFORM'              )
+      NAIF_BODY_CODE += ( -30000                      )
+
+      NAIF_BODY_NAME += ( 'VO2_VISA'                  )
+      NAIF_BODY_CODE += ( -30001                      )
+
+      NAIF_BODY_NAME += ( 'VO2_VISB'                  )
+      NAIF_BODY_CODE += ( -30002                      )
+
+      NAIF_BODY_NAME += ( 'VO2_IRTM'                  )
+      NAIF_BODY_CODE += ( -30003                      )
+
+      NAIF_BODY_NAME += ( 'VO2_MAWD'                  )
+      NAIF_BODY_CODE += ( -30004                      )
+
+   \begintext
diff --git a/tests/pytests/data/f735a00/f735a00_0.xsp b/tests/pytests/data/f735a00/f735a00_0.xsp
new file mode 100644
index 0000000..7832281
--- /dev/null
+++ b/tests/pytests/data/f735a00/f735a00_0.xsp
@@ -0,0 +1,634 @@
+DAFETF NAIF DAF ENCODED TRANSFER FILE
+'DAF/SPK '
+'2'
+'6'
+'SPKMERGE                                                    '
+BEGIN_ARRAY 1 433
+'22jun78                                 '
+'-287DFD03CFC8F^8'
+'-287DF201F2585C^8'
+'-1B'
+'4'
+'E'
+'1'
+433
+'-287DFC3051C54E^8'
+'227C5A4E882^3'
+'44F8B49D104^3'
+'67750EEB986^3'
+'89F1693A208^3'
+'AC6DC388A8A^3'
+'CEEA1DD730C^3'
+'F1667825B8E^3'
+'113E2D27441^4'
+'1365F2CC2C92^4'
+'158DB8711514^4'
+'17B57E15FD96^4'
+'18C960E871D7^4'
+'19DD43BAE618^4'
+'1AF1268D5A59^4'
+'1C05095FCE9A^4'
+'AF15B76B3F26F^3'
+'A09FCC652453^0'
+'-6DB934FFDF948^4'
+'-9F5FB8B76B97E^0'
+'-1F8C429AF67E63^4'
+'-EF9F0DA9BA977^-1'
+'-4F882770621108^-4'
+'-71915DAA94B2A4^-5'
+'9C62E3E87AF6E8^-6'
+'-152E78F23E325E^-6'
+'35C1C68853D784^-7'
+'-A7A10E4EF6A59^-8'
+'26CBE61FC5A628^-8'
+'-A8708A28BB733^-9'
+'34DB3B7FC73014^-9'
+'-12FC1DD002F78C^-9'
+'7BD314D266AB58^-A'
+'-38E6FA4A36DEE8^-A'
+'1B766CAE0F4F8F^-A'
+'-E0EA7622BE0EF^-B'
+'740F49^-B'
+'31D6BA6FA756DC^-3'
+'-151F19C1110412^-4'
+'172239BEB281AA^-5'
+'-22529228556F68^-6'
+'454EB2A84958D4^-7'
+'-AEE4693F89F85^-8'
+'216ECDD616841^-8'
+'-78615E000913F8^-9'
+'1F3844767B583A^-9'
+'-920B2728E9AD6^-A'
+'30569E239BA3AC^-A'
+'-E93C1FB3D9744^-B'
+'A233CE^-B'
+'0^0'
+'0^0'
+'E54338B725CDC8^-4'
+'-808C542A378EE8^-5'
+'939E2DFEE5C7B8^-6'
+'-F1CE2CE465209^-7'
+'20DC3CCBAC69D4^-7'
+'-59BE1AB4D18BB^-8'
+'1298A6D4CF7C82^-8'
+'-49185316C11EB^-9'
+'14EA565DE27BE4^-9'
+'-6DE3B1A5C2FC28^-A'
+'2965BE9A1797A8^-A'
+'-1089E572CAB1C9^-A'
+'93B32B21C5D35^-B'
+'77D1535F50231^-B'
+'0^0'
+'F^1'
+'E^1'
+'C^1'
+'D^1'
+'-287DF3913B31AC^8'
+'227C5A4E882^3'
+'44F8B49D104^3'
+'67750EEB986^3'
+'89F1693A208^3'
+'AC6DC388A8A^3'
+'CEEA1DD730C^3'
+'F1667825B8E^3'
+'113E2D27441^4'
+'1365F2CC2C92^4'
+'158DB8711514^4'
+'17B57E15FD96^4'
+'19DD43BAE618^4'
+'1C05095FCE9A^4'
+'1E2CCF04B71C^4'
+'205494A99F9E^4'
+'104D65F1486029^4'
+'9D8791B3724738^0'
+'-72A730C60305A4^4'
+'-85C925D4DB537^0'
+'-1FED80CA544832^4'
+'-7BC380E0F6F5DC^-1'
+'-671E16AEF32478^-4'
+'-548FF688B15F74^-5'
+'5FE3169E357B98^-6'
+'-C39855792DAE28^-7'
+'1B8FF512F417A1^-7'
+'-4CFA53311D880C^-8'
+'FD2B81A10C47D^-9'
+'-3CD825F5D5173E^-9'
+'10D7077ABFD496^-9'
+'-550A9AB62DB1A^-A'
+'1E574F5EF55D1A^-A'
+'-C2786BD88FB2A8^-B'
+'56EDE47DAD6208^-B'
+'-2B1633D8B17348^-B'
+'17EE7D8^-B'
+'2D52FE54B0788C^-3'
+'-10698BB745A7C3^-4'
+'109E1B11EB3C01^-5'
+'-15F232D3DE9F52^-6'
+'27FE04F94FD0AC^-7'
+'-5A931B019EC644^-8'
+'F91337573F05C^-9'
+'-326A6435382FF^-9'
+'BCA11B17BB4A28^-A'
+'-321667C7717BC^-A'
+'EE111A85E0C68^-B'
+'-4E07B^-B'
+'1C1374^-B'
+'-28B9C^-C'
+'0^0'
+'C9EEDD31C1C97^-4'
+'-631A068F09006^-5'
+'6687DC6C68AF7C^-6'
+'-961C88316BF08^-7'
+'123950AF528F2C^-7'
+'-2C60C2E90C73D8^-8'
+'82E38BEF49867^-9'
+'-1C8AAE8D21DAFE^-9'
+'73B60467D1FFB8^-A'
+'-219B4966BC1F2^-A'
+'B11328890E058^-B'
+'-2657948^-B'
+'0^0'
+'0^0'
+'0^0'
+'F^1'
+'E^1'
+'D^1'
+'B^1'
+'-287DF3BF760E96^8'
+'89F1693A2^0'
+'89F1693A2^0'
+'89F1693A2^0'
+'89F1693A208^3'
+'AC6DC388A8A^3'
+'CEEA1DD730C^3'
+'F1667825B8E^3'
+'113E2D27441^4'
+'1365F2CC2C92^4'
+'158DB8711514^4'
+'17B57E15FD96^4'
+'19DD43BAE618^4'
+'1C05095FCE9A^4'
+'1E2CCF04B71C^4'
+'205494A99F9E^4'
+'1030F1AE9B2A18^4'
+'9D9A26E7C97B3^0'
+'-728EFC093B8D7^4'
+'-864C3A0F5BEDD8^0'
+'-1FEC17E5526A7^4'
+'-7E0BB0CA09344C^-1'
+'-66B022E077AD84^-4'
+'-148FCE5CF5C^-7'
+'-148FCE5CF5C^-7'
+'0^0'
+'-66B022E077AD84^-4'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'2D686366A67D4A^-3'
+'-40009C8962^-7'
+'-40009C8962^-7'
+'0^0'
+'2D686366A67D4A^-3'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'CA6FFDC88975D8^-4'
+'-1824C23449^-7'
+'-1824C23449^-7'
+'0^0'
+'CA6FFDC88975D8^-4'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'3^1'
+'2^1'
+'2^1'
+'2^1'
+'-287DF3BDD476C6^8'
+'117A6670B9^1'
+'1A197D045B^1'
+'22B89397FD^1'
+'22B89397FD^1'
+'22B89397FD^1'
+'CEEA1DD730C^3'
+'F1667825B8E^3'
+'113E2D27441^4'
+'1365F2CC2C92^4'
+'158DB8711514^4'
+'17B57E15FD96^4'
+'19DD43BAE618^4'
+'1C05095FCE9A^4'
+'1E2CCF04B71C^4'
+'205494A99F9E^4'
+'1031F2C3A20E24^4'
+'9D997F62CF02C^0'
+'-728FD71743C508^4'
+'-864798F9C545C^0'
+'-1FEC24BE01BE31^4'
+'-7DF70D7E1268BC^-1'
+'-66B406B08A4FE8^-4'
+'-29AD88ADFA100E^-7'
+'1077BC0623CB82^-A'
+'-A84^-E'
+'-66B022E077AD84^-4'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'2D67A1ABA18B44^-3'
+'-81BB5FF47F5BB8^-7'
+'2F78AD25225A6E^-A'
+'-1358^-D'
+'2D686366A67D4A^-3'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'CA6B6C7DCAC56^-4'
+'-30F0487326F6AE^-7'
+'122AC6CD23B6D6^-A'
+'-83D^-E'
+'CA6FFDC88975D8^-4'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'4^1'
+'3^1'
+'3^1'
+'3^1'
+'-287DF378ED2824^8'
+'21401FFC962^2'
+'33B3BFE3CD2^2'
+'3F38AF67139^2'
+'44E74EA2D04^2'
+'45FEF509DBD^2'
+'4688E67315F^2'
+'4712D7DC501^2'
+'113E2D27441^4'
+'1365F2CC2C92^4'
+'158DB8711514^4'
+'17B57E15FD96^4'
+'19DD43BAE618^4'
+'1C05095FCE9A^4'
+'1E2CCF04B71C^4'
+'205494A99F9E^4'
+'105C5A350E7B7A^4'
+'9D7DC4B81AD7F^0'
+'-72B3E125676104^4'
+'-858454CA09892^0'
+'-1FEE3BE2568012^4'
+'-7A90F4F6369FE^-1'
+'-6757A7AC5783E^-4'
+'-4ECBB81258D4C4^-6'
+'3D82738EBAF518^-8'
+'-4764BC70E0B114^-A'
+'475A4F73206408^-C'
+'-B60C^-E'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'2D47C9EB1A34BC^-3'
+'-F5615694B357E8^-6'
+'B1E0C5786DD51^-8'
+'-849D53E35E42D8^-A'
+'6D7E7B89C9057^-C'
+'-702^-E'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'C9AB3DF7297FE^-4'
+'-5C8E914037C21C^-6'
+'440808CD6F8864^-8'
+'-382A1E8C8B9312^-A'
+'31046EEB642E0E^-C'
+'-798^-F'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'6^1'
+'5^1'
+'5^1'
+'5^1'
+'-287DF0022E7622^8'
+'1150A652934^3'
+'1EFEFD7DB248^3'
+'289ACBBE6568^3'
+'2F5A65617A38^3'
+'3417BEAC5538^3'
+'376BEB201DBC^3'
+'397FED1FE71E^3'
+'3AA7271E5A8E^3'
+'3B5F76168EF5^3'
+'158DB8711514^4'
+'17B57E15FD96^4'
+'19DD43BAE618^4'
+'1C05095FCE9A^4'
+'1E2CCF04B71C^4'
+'205494A99F9E^4'
+'127B64DD6400EB^4'
+'9C0A16692E599^0'
+'-74719420CC8564^4'
+'-7BE1A022F9296^0'
+'-20041DA53F0C46^4'
+'-4FEA6672E27F9C^-1'
+'-6F224AB0130978^-4'
+'-25A116D1CE927E^-5'
+'10AFA56FEA6237^-6'
+'-C9D83F7B0A92D8^-8'
+'898B8413DBF848^-9'
+'-653BDA4827DA3C^-A'
+'4B453F688466C^-B'
+'-395C54^-C'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'2BC28C0270B40C^-3'
+'-75A2B4E1017E04^-5'
+'32CBE7AF3D3068^-6'
+'-17F1CD1E2137C3^-7'
+'D8346CE9FF623^-9'
+'-81E775DA784DE^-A'
+'525E10448FDE3^-B'
+'-32BF6^-C'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'C07F38589AD1F^-4'
+'-2C5741E439D146^-5'
+'133D7FF797DEDF^-6'
+'-A150B2F0B09738^-8'
+'6013B67A6B749^-9'
+'-3DB0E73289FE48^-A'
+'297C805EE5CA7A^-B'
+'-1C898^-C'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'0^0'
+'9^1'
+'8^1'
+'7^1'
+'8^1'
+'-287DFC3051C582^8'
+'-287DF3C^8'
+'-287DF3BF760E94^8'
+'-287DF3BDD476F2^8'
+'-287DF378ED27E6^8'
+'-287DF0022E762^8'
+'6^1'
+END_ARRAY 1 433
+BEGIN_ARRAY 2 39
+'DE-0721LE-0721                          '
+'-287DFD03CFC8F^8'
+'-287DF201F2585C^8'
+'A'
+'0'
+'1'
+'2'
+39
+'-2875B0C^8'
+'A8C^5'
+'AC3D7CB77DDCD^5'
+'22DD35A9AFDBDE^4'
+'-D5CA2734F1FCE^1'
+'A0B502418872A8^-1'
+'2EF71655C6B0F6^-1'
+'-4D33BAD60F483^-2'
+'3F4064180DB726^-3'
+'97FCA03D617BF^-4'
+'-2CA793D85A09C^-4'
+'4DC3E7CA6EF588^-5'
+'4644C189321A34^-7'
+'-7FD7ABE4C4DFDC^5'
+'F108D2E4E03F9^3'
+'142C70A32BAD5B^2'
+'-354CFA25CFA2CE^0'
+'1DCFF0D39314F5^-1'
+'12E36A6B063B73^-2'
+'-7E5D32363242DC^-3'
+'10FA3F9B71DCD3^-3'
+'-A6718EFD7C574^-5'
+'-3718DF13579132^-5'
+'CF066909006E58^-6'
+'-3C91F8173D173E^5'
+'570193D309EE9^3'
+'92F3652F409B08^1'
+'-1A1CCC41A5E191^0'
+'AF616C630E437^-2'
+'119850853207CE^-2'
+'-4A0D67DE16AD8^-3'
+'815BE67E5FDA98^-4'
+'-EC36E1960368^-6'
+'-257FEBA6229DD4^-5'
+'6E20CF9FCB9EE4^-6'
+'-28803CC^8'
+'1518^6'
+'23^2'
+'1^1'
+END_ARRAY 2 39
+BEGIN_ARRAY 3 39
+'DE-0721LE-0721                          '
+'-287DFD03CFC8F^8'
+'-287DF201F2585C^8'
+'4'
+'0'
+'1'
+'2'
+39
+'-28803CC^8'
+'1518^6'
+'-E5EAE27440F3C^7'
+'5BD189B93FB1E^6'
+'FE3618F9424968^5'
+'-2FD48EC5E5BD1^3'
+'-12683B83E8210F^3'
+'-2AF2CE9D9DF1F6^1'
+'-B8A1D5CF80ACF^-1'
+'13A36CE79CB407^-2'
+'F46015645D4AD^-4'
+'-13D806CF4E54B^-4'
+'1A8D2CBFB41BAB^-6'
+'-20BEAEA7FDFB94^7'
+'-1A264A82B9749F^7'
+'23ABBF14364814^5'
+'4EBB77339BFF78^4'
+'3DE85EB8B1A3C8^2'
+'-135F9C8CF78BB3^1'
+'-B182A4D6BB98E8^-1'
+'-51EE302A7898E^-2'
+'-136A2C396F1108^-3'
+'39BE63F95C7B1^-5'
+'2CBCEE46FAD5FE^-5'
+'-8C7F8646FA5268^6'
+'-C263F2A08DDD88^6'
+'979B5833C3625^4'
+'2431430C6D00FE^4'
+'245E1E50540A98^2'
+'-7BA06A115F13A8^0'
+'-4C4C4B3077CDC4^-1'
+'-25A29AC98720BC^-2'
+'-96ED02723DE9B8^-4'
+'-9EC540801679C^-6'
+'12571425850D1F^-5'
+'-289554C^8'
+'2A3^6'
+'23^2'
+'1^1'
+END_ARRAY 3 39
+BEGIN_ARRAY 4 54
+'MAR097                                  '
+'-287DFD03CFC8F^8'
+'-287DF201F2585C^8'
+'1F3'
+'4'
+'1'
+'3'
+54
+'-287E185^8'
+'2A3^4'
+'2BCAF6A6A13A4A^-3'
+'8EFE351F45F4C^-3'
+'-796AD624F8BA1^-4'
+'-3BE638DB8AEF12^-3'
+'1807051B01932^-5'
+'4CB6C184A9A3D8^-4'
+'14A0193B4053A8^-5'
+'-1D7CE27DFCEAD^-5'
+'FCFCD4DA1E2598^-4'
+'437252F138D22^-3'
+'7C3CA80D357EA8^-3'
+'-FE257D5B1D00F8^-4'
+'-1367670D565C38^-3'
+'103DF03129F098^-4'
+'E69F539069FBA^-5'
+'2E29B7045B518^-6'
+'-DF2A547DE173D^-4'
+'-30D438E13C719A^-3'
+'45F424B25863D8^-3'
+'1A57BCB9195BE9^-3'
+'-A571269E59C258^-4'
+'-23E0E57AE0294C^-4'
+'6E51E84DF7106^-5'
+'12A0F0B824FC^-5'
+'-5226C27319672^-7'
+'-ADC580FC90D458^-7'
+'-76BB54CBC00F7C^-6'
+'A6C4F7222866^-8'
+'11928B05B2B45C^-6'
+'5DDE50B2A30D3C^-8'
+'-9C91C83508489^-8'
+'0^0'
+'976454F1A5192^-7'
+'85B2F66842C64^-6'
+'-203C48F702FA58^-6'
+'-36C5E1171BA73C^-6'
+'3E8E79560B86C8^-7'
+'4199688D33C398^-7'
+'F51BB072279DC^-9'
+'0^0'
+'764ECB7D37907^-7'
+'4CB5FB968352AC^-6'
+'33D37FD6FD5FBC^-6'
+'-1D69557E1C8EC1^-6'
+'-81E3FD07D2F6B^-7'
+'1F6140F0A14C56^-7'
+'62E94E888AB9D4^-8'
+'0^0'
+'-287E428^8'
+'546^4'
+'32^2'
+'1^1'
+END_ARRAY 4 54
+TOTAL_ARRAYS 4
+ ~NAIF/SPC BEGIN COMMENTS~
+; /home/pgiroux/Desktop/f735a00/f735a00_0.bsp LOG FILE
+
+; Created 2019-09-11/12:19:02.00.
+;
+; BEGIN SPKMERGE COMMANDS
+
+LEAPSECONDS_KERNEL   = /usgs/cpkgs/isis3/data/base/kernels/lsk/naif0012.tls
+
+SPK_KERNEL           = /home/pgiroux/Desktop/f735a00/f735a00_0.bsp
+  SOURCE_SPK_KERNEL  = /usgs/cpkgs/isis3/data/viking1/kernels/spk/viking1b.bsp
+    INCLUDE_COMMENTS = NO
+    BODIES           = -27
+    BEGIN_TIME       = 1978 JUN 22 16:55:39.004
+    END_TIME         = 1978 JUN 22 17:42:36.869
+  SOURCE_SPK_KERNEL  = /usgs/cpkgs/isis3/data/base/kernels/spk/mar097.bsp
+    INCLUDE_COMMENTS = NO
+    BODIES           = 4, 10, 499
+    BEGIN_TIME       = 1978 JUN 22 16:55:39.004
+    END_TIME         = 1978 JUN 22 17:42:36.869
+
+; END SPKMERGE COMMANDS
+ ~NAIF/SPC END COMMENTS~
diff --git a/tests/pytests/data/f735a00/f735a00_isis3.lbl b/tests/pytests/data/f735a00/f735a00_isis3.lbl
new file mode 100644
index 0000000..9ba2057
--- /dev/null
+++ b/tests/pytests/data/f735a00/f735a00_isis3.lbl
@@ -0,0 +1,103 @@
+Object = IsisCube
+  Object = Core
+    StartByte   = 65537
+    Format      = Tile
+    TileSamples = 1204
+    TileLines   = 1056
+
+    Group = Dimensions
+      Samples = 1204
+      Lines   = 1056
+      Bands   = 1
+    End_Group
+
+    Group = Pixels
+      Type       = UnsignedByte
+      ByteOrder  = Lsb
+      Base       = 0.0
+      Multiplier = 1.0
+    End_Group
+  End_Object
+
+  Group = Instrument
+    SpacecraftName       = VIKING_ORBITER_1
+    InstrumentId         = VISUAL_IMAGING_SUBSYSTEM_CAMERA_B
+    TargetName           = MARS
+    StartTime            = 1978-06-22T17:26:00
+    ExposureDuration     = 0.067880 <seconds>
+    SpacecraftClockCount = 40031801
+    FloodModeId          = ON
+    GainModeId           = HIGH
+    OffsetModeId         = ON
+  End_Group
+
+  Group = Archive
+    DataSetId       = VO1/VO2-M-VIS-2-EDR-V2.0
+    ProductId       = 735A00
+    MissonPhaseName = CONTINUATION_MISSION
+    ImageNumber     = 40031801
+    OrbitNumber     = 735
+  End_Group
+
+  Group = BandBin
+    FilterName = RED
+    FilterId   = 6
+    Center     = 0.59 <micrometers>
+    Width      = 0.15 <micrometers>
+  End_Group
+
+  Group = Kernels
+    NaifFrameCode = -27002
+    CameraVersion = 1
+  End_Group
+
+  Group = Reseaus
+    Line     = (5, 6, 8, 9, 10, 11, 12, 13, 14, 14, 15, 133, 134, 135, 137,
+                138, 139, 140, 141, 141, 142, 143, 144, 263, 264, 266, 267,
+                268, 269, 269, 270, 271, 272, 273, 393, 393, 395, 396, 397,
+                398, 399, 399, 400, 401, 402, 403, 523, 524, 525, 526, 527,
+                527, 528, 529, 530, 530, 532, 652, 652, 654, 655, 656, 657,
+                657, 658, 659, 660, 661, 662, 781, 783, 784, 785, 786, 787,
+                788, 788, 789, 790, 791, 911, 912, 913, 914, 915, 916, 917,
+                918, 918, 919, 920, 921, 1040, 1041, 1043, 1044, 1045, 1045,
+                1046, 1047, 1047, 1048, 1050)
+    Sample   = (24, 142, 259, 375, 491, 607, 723, 839, 954, 1070, 1185, 24,
+                84, 201, 317, 433, 549, 665, 780, 896, 1011, 1127, 1183, 25,
+                142, 259, 375, 492, 607, 722, 838, 953, 1068, 1183, 25, 84,
+                201, 317, 433, 549, 665, 779, 895, 1010, 1125, 1182, 25, 143,
+                259, 375, 491, 607, 722, 837, 952, 1067, 1182, 25, 84, 201,
+                317, 433, 548, 664, 779, 894, 1009, 1124, 1181, 25, 142, 258,
+                374, 490, 605, 720, 835, 951, 1066, 1180, 24, 83, 200, 316,
+                431, 547, 662, 776, 892, 1007, 1122, 1179, 23, 140, 257, 373,
+                488, 603, 718, 833, 948, 1063, 1179)
+    Type     = (1, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+                5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5,
+                5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5,
+                5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5,
+                5, 5, 5, 5, 5, 5, 5, 6, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6)
+    Valid    = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
+    Template = $viking1/reseaus/vo1.visb.template.cub
+        Status   = Nominal
+      End_Group
+    End_Object
+
+    Object = Label
+      Bytes = 65536
+    End_Object
+
+    Object = History
+      Name      = IsisCube
+      StartByte = 1336961
+      Bytes     = 444
+    End_Object
+
+    Object = OriginalLabel
+      Name      = IsisCube
+      StartByte = 1337405
+      Bytes     = 1988
+    End_Object
+    End
diff --git a/tests/pytests/data/f735a00/f735a00_pds3.lbl b/tests/pytests/data/f735a00/f735a00_pds3.lbl
new file mode 100644
index 0000000..4591dc7
--- /dev/null
+++ b/tests/pytests/data/f735a00/f735a00_pds3.lbl
@@ -0,0 +1,1632 @@
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+/*          FILE FORMAT AND LENGTH */
+RECORD_TYPE                      = VARIABLE_LENGTH
+RECORD_BYTES                     = 1204
+FILE_RECORDS                     = 2176
+LABEL_RECORDS                    = 60
+/*          POINTERS TO START RECORDS OF MAJOR OBJECTS IN FILE */
+^IMAGE_HISTOGRAM                 = 61
+^ENCODING_HISTOGRAM              = 62
+^ENGINEERING_TABLE               = 64
+^LINE_HEADER_TABLE               = 65
+^IMAGE                           = 1121
+/*          IMAGE DESCRIPTION */
+DATA_SET_ID                      = 'VO1/VO2-M-VIS-2-EDR-V2.0'
+SPACECRAFT_NAME                  = VIKING_ORBITER_1
+MISSION_PHASE_NAME               = CONTINUATION_MISSION
+TARGET_NAME                      = MARS
+IMAGE_ID                         = '735A00'
+IMAGE_NUMBER                     = 40031801
+IMAGE_TIME                       = 1978-06-22T17:26:00Z
+EARTH_RECEIVED_TIME              = 1978-06-24T06:19:00Z
+ORBIT_NUMBER                     = 735
+INSTRUMENT_NAME                  = VISUAL_IMAGING_SUBSYSTEM_CAMERA_B
+GAIN_MODE_ID                     = HIGH
+FLOOD_MODE_ID                    = ON
+OFFSET_MODE_ID                   = ON
+FILTER_NAME                      = RED
+EXPOSURE_DURATION                = 0.067880 <SECONDS>
+NOTE                             = "LOW RESOLUTION STEREO SEQUENCE"
+/*          DESCRIPTION OF THE OBJECTS CONTAINED IN FILE */
+OBJECT                           = IMAGE_HISTOGRAM
+ ITEMS                           = 256
+ ITEM_TYPE                       = VAX_INTEGER
+ ITEM_BITS                       = 32
+END_OBJECT
+OBJECT                           = ENCODING_HISTOGRAM
+ ITEMS                           = 511
+ ITEM_TYPE                       = VAX_INTEGER
+ ITEM_BITS                       = 32
+END_OBJECT
+OBJECT                           = ENGINEERING_TABLE
+ ROWS                            = 1
+ ROW_BYTES                       = 152
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+
+OBJECT                         = ENGINEERING_TABLE_STRUCTURE
+  INTERCHANGE_FORMAT           = BINARY
+  BYTES                        = 152
+  NOTE                         = "This structure describes the format of
+        the engineering record that is included in each image file.
+        This record contains the first 152 bytes of data extracted from
+        the Mission and Test Imaging System (MTIS) header record on each
+        file of an imaging EDR tape."
+
+  OBJECT                       = COLUMN
+    NAME                       = MTIS_RECORD_ID
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 1
+    BYTES                      = 2
+    DESCRIPTION                = "Mission and Test Imaging System record
+        ID."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PHYSICAL_SEQUENCE_NUMBER
+    DATA_TYPE                  = VAX_UNSIGNED_INTEGER
+    START_BYTE                 = 3
+    BYTES                      = 2
+    DESCRIPTION                = "Physical sequence number on Experiment
+        Data Record tape.  Not used."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LOGICAL_SEQUENCE_NUMBER
+    DATA_TYPE                  = VAX_UNSIGNED_INTEGER
+    START_BYTE                 = 5
+    BYTES                      = 2
+    DESCRIPTION                = "Logical sequence number on Experiment
+        Data Record tape.  Not used."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 7
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time year and day
+        value.  Time of first line segment in the file containing valid
+        data.  This field is NOT stored in VAX least significant byte
+        first format."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FIRST_ERT_YEAR
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 1
+      BITS                     = 7
+      DESCRIPTION              = "Earth Received Time year of century
+        (1900).  Time of first line record in the file containing valid
+        data.  This field is often incorrect."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FIRST_ERT_DAY
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 7
+      BITS                     = 9
+      DESCRIPTION              = "Earth Received Time day of year."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT_MINUTE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 9
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time minute of day."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_ERT_MILLISECOND
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 11
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time millisecond of
+        minute."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 13
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time year and day
+        value.  Time of last line segment of the file containing valid
+        data."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LAST_ERT_YEAR
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 1
+      BITS                     = 7
+      DESCRIPTION              = "Earth Received Time year of century
+        (1900).  This field is often incorrect."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LAST_ERT_DAY
+      DATA_TYPE                = UNSIGNED_INTEGER
+      START_BIT                = 8
+      BITS                     = 9
+      DESCRIPTION              = "Earth Received Time day of year."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT_MINUTE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 15
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time minute of day."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_ERT_MILLISECOND
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 17
+    BYTES                      = 2
+    DESCRIPTION                = "Earth Received Time millisecond of
+        minute."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 19
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem count for the
+        first line segment of the file containing valid data.  Note that
+        this may not correspond to the FDS count for line 1, segment 1."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 23
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem count for the
+        last line segment of the file containing valid data.  Note that
+        this may not correspond to the FDS count for segment 7 of line
+        1056."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EDR_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 27
+    BYTES                      = 6
+    DESCRIPTION                = "Tape reel identifier of the original
+        EDR tape for this image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EDR_FILE_NUMBER
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 33
+    BYTES                      = 2
+    DESCRIPTION                = "File number of image on original EDR
+        tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILL_IN
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 34
+    BYTES                      = 1
+    DESCRIPTION                = "Value used to fill in missing samples
+        (always zero)."
+  END_OBJECT                   = COLUMN
+  OBJECT                       = COLUMN
+    NAME                       = TRACK_PRESENCE_MASK
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 36
+    BYTES                      = 1
+    DESCRIPTION                = "Mask indicating which tracks are
+        present in the image.  The nominal value is HEX 7F, indicating
+        that all seven tracks are present."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = AVERAGE_PIXEL
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 37
+    BYTES                      = 2
+    DESCRIPTION                = "Average pixel value for image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_1
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 39
+    BYTES                      = 4
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MINIMUM_SNR
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 43
+    BYTES                      = 2
+    FACTOR                     = 0.03125
+    DESCRIPTION                = "Minimum signal to noise ratio.  The
+        minimum noise level found for the scan lines.  Divide by 32 to
+        get the actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MAXIMUM_SNR
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 45
+    BYTES                      = 2
+    FACTOR                     = 0.03125
+    DESCRIPTION                = "Maximum signal to noise ratio.  The
+        maximum noise level found for the scan lines.  Divide by 32 to
+        get the actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_2
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 47
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MINIMUM_AGC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 49
+    BYTES                      = 2
+    FACTOR                     = 0.0625
+    DESCRIPTION                = "Automatic gain control minimum.
+        Divide by 16 to get actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = MAXIMUM_AGC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 51
+    BYTES                      = 2
+    FACTOR                     = 0.0625
+    DESCRIPTION                = "Automatic gain control maximum.
+        Divide by 16 to get actual value."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_3
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 53
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 55
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that contain some valid data (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 57
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that were fully synchronized (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 59
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that were partly synchronized (maximum is 7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI0_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 61
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 0 (maximum is 7 x 1056).
+        DQI0 indicates bad data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI1_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 63
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 1 (maximum is 7 x 1056).
+        DQI1 means SNR low, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI2_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 65
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 2 (maximum is 7 x 1056).
+        DQI2 means SNR good, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI3_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 67
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 3 (maximum is 7 x 1056).
+        DQI3 means SNR low, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI4_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 69
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with a data quality indicator of 4 (maximum is 7 x 1056).
+        DQI4 means SNR good, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FDS_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 71
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected FDS counts."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PNERROR_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 73
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected pseudonoise codes."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = ADJUSTED_PNERROR_CORRECTIONS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 75
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file with corrected pseudonoise codes adjusted based on the
+        number of line segments processed versus the total in a full
+        image (7 x 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNREADABLE_RECORDS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 77
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        file that could not be read from the Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LOGICAL_SEQUENCE_BREAKS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 79
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of breaks in logical
+        sequence number in reading the System/Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DATA_BREAKS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 81
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of breaks in data
+        sequence in reading the System/Master Data Record tape."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_4
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 83
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 85
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of lines in the file that
+        contain some valid data (nominal is 1056)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULL_LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 87
+    BYTES                      = 2
+    DESCRIPTION                = "Number of lines in the file that are
+        composed of seven line segments."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTIAL_LINES
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 89
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line records in the
+        file that contain some valid data but are not composed of seven
+        line segments."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FIRST_LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 91
+    BYTES                      = 2
+    DESCRIPTION                = "First line in image containing valid
+        data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LAST_LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 93
+    BYTES                      = 2
+    DESCRIPTION                = "Last line in image containing valid
+        data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_5
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 95
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = IMAGE_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 97
+    BYTES                      = 6
+    DESCRIPTION                = "Image identifier (PICNO) for this
+        image, formatted OOOSNN, where OOO is orbit number, S is
+        spacecraft identifier (A for Viking Orbiter 1 prime and extended
+        missions; B for Viking Orbiter 2; and S for Viking Orbiter 1
+        Survey mission)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VRP_RUN_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 103
+    BYTES                      = 2
+    DESCRIPTION                = "Viking Reconstruction Processing run
+        number."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DISK_ID
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 105
+    BYTES                      = 6
+    DESCRIPTION                = "MTIS disk identifier of the original
+        EDR file for this image."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = UNUSED_6
+    DATA_TYPE                  = CHARACTER
+    START_BYTE                 = 111
+    BYTES                      = 2
+    DESCRIPTION                = "Unused."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRANSMITTED_CODE_WORD1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 113
+    BYTES                      = 2
+    DESCRIPTION                = "Transmitted command code word for the
+        image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  Where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CATHODE_CURRENT_FLAG
+      START_BIT                = 7
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Cathode current off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = GAIN_FLAG
+      START_BIT                = 8
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Gain mode low (0) or high (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LIGHT_FLOOD_FLAG
+      START_BIT                = 9
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Light flood off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_STEP
+      START_BIT                = 10
+      BITS                     = 2
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter step indicator."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = EXPOSURE_CODE
+      START_BIT                = 12
+      BITS                     = 5
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Exposure interval code."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRANSMITTED_CODE_WORD2
+    DATA_TYPE                  = INTEGER
+    START_BYTE                 = 115
+    BYTES                      = 2
+    DESCRIPTION                = "Transmitted command code word 2 for
+        this image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_NUMBER
+      START_BIT                = 10
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter number:  where 1 is blue; 2 is
+        minus blue; 3 is violet; 4 is clear; 5 is green; and 6 is red."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CAMERA_SERIAL_NUMBER
+      START_BIT                = 13
+      BITS                     = 4
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Visual Imaging Subsystem camera serial
+        number."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = RECEIVED_CODE_WORD1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 117
+    BYTES                      = 2
+    DESCRIPTION                = "Received command code word for the
+        image."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      START_BIT                = 1
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Set to 1 if data not present for the
+        following measurements."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      START_BIT                = 3
+      BITS                     = 3
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Data quality indicator associated with
+        code word values.  where: 0 is bad data; 1 is SNR low, GCF block
+        error; 2 is SNR good, GCF block bad; 3 is SNR low, GCF block
+        good; 4 is SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = CATHODE_CURRENT_FLAG
+      START_BIT                = 7
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Cathode current (beam) off (0) or on
+        (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = GAIN_FLAG
+      START_BIT                = 8
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Gain mode low (0) or high (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = LIGHT_FLOOD_FLAG
+      START_BIT                = 9
+      BITS                     = 1
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Light flood off (0) or on (1)."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = FILTER_STEP
+      START_BIT                = 10
+      BITS                     = 2
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Filter step."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = EXPOSURE_CODE
+      START_BIT                = 12
+      BITS                     = 5
+      DATA_TYPE                = UNSIGNED_INTEGER
+      DESCRIPTION              = "Exposure interval code."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS50_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 121
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 50 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS15_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 123
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 15 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS12_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 125
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 12 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_PLUS5_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 127
+    BYTES                      = 2
+    DESCRIPTION                = "Plus 5 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_MINUS15_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 129
+    BYTES                      = 2
+    DESCRIPTION                = "Minus 15 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_MINUS23_VDC
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 131
+    BYTES                      = 2
+    DESCRIPTION                = "Minus 23 volts dc."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = VIS_AVERAGE_VIDEO
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 133
+    BYTES                      = 2
+    DESCRIPTION                = "Average video."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = POWER_CONVERTER_INPUT_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 135
+    BYTES                      = 2
+    DESCRIPTION                = "Power converter input current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = CATHODE_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 137
+    BYTES                      = 2
+    DESCRIPTION                = "Cathode current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = CATHODE_VOLTAGE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 139
+    BYTES                      = 2
+    DESCRIPTION                = "Cathode voltage."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILAMENT_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 141
+    BYTES                      = 2
+    DESCRIPTION                = "Filament current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FRAME_SWEEP_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 143
+    BYTES                      = 2
+    DESCRIPTION                = "Frame sweep current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_SWEEP_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 145
+    BYTES                      = 2
+    DESCRIPTION                = "Line sweep current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = GRID3_VOLTAGE
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 147
+    BYTES                      = 2
+    DESCRIPTION                = "Grid 3 voltage."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FOCUS_CURRENT
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 149
+    BYTES                      = 2
+    DESCRIPTION                = "Focus current."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DIGITAL_LADDER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 151
+    BYTES                      = 2
+    DESCRIPTION                = "Digital ladder."
+  END_OBJECT                   = COLUMN
+
+END_OBJECT                     = ENGINEERING_TABLE_STRUCTURE
+
+END
+END_OBJECT
+OBJECT                           = LINE_HEADER_TABLE
+ ROWS                            = 1056
+ ROW_BYTES                       = 62
+CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
+
+OBJECT                         = LINE_HEADER_TABLE_STRUCTURE
+  INTERCHANGE_FORMAT           = BINARY
+  BYTES                        = 62
+  NOTE                         = "Viking Orbiter Image Line-header
+        Structure.  This label describes the structure of the 62-bytes
+        extracted from the end of each image line."
+
+  OBJECT                       = COLUMN
+    NAME                       = FDS_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 1
+    BYTES                      = 4
+    DESCRIPTION                = "Flight Data Subsystem (FDS) clock
+        count."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_NUMBER
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 5
+    BYTES                      = 2
+    DESCRIPTION                = "Flight Data Subsystem line number,
+        extracted from the telemetry record header information."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FILL_IN
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 7
+    BYTES                      = 1
+    DESCRIPTION                = "Value used to fill in missing samples
+        (always zero)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = TRACK_PRESENCE_MASK
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 8
+    BYTES                      = 1
+    DESCRIPTION                = "Mask indicating which tracks are
+        present in this line.  The nominal value is HEX 7F, indicating
+        that all seven tracks are present."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = AVERAGE_PIXEL
+    DATA_TYPE                  = UNSIGNED_INTEGER
+    START_BYTE                 = 9
+    BYTES                      = 2
+    DESCRIPTION                = "Average pixel value for this line."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 11
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of line segments in the
+        line that contain some valid data (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = FULLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 13
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        that were fully synchronized (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = PARTLY_SYNCHED_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 15
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        that were partly synchronized (maximum is 7)."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI0_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 17
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 0 (maximum is 7), indicating
+        bad data."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI1_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 19
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 1 (maximum is 7), indicating
+        SNR low, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI2_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 21
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 2 (maximum is 7), indicating
+        SNR good, GCF block bad."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI3_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 23
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 3 (maximum is 7), indicating
+        SNR low, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI4_SEGMENTS
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 25
+    BYTES                      = 2
+    DESCRIPTION                = "Total number of segments in the line
+        with a data quality indicator of 4 (maximum is 7), indicating
+        SNR good, GCF block good."
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 27
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK1
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 29
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT2
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 31
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK2
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 33
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT3
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 35
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK3
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 37
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+        START_BIT              = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT4
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 39
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK4
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 41
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT5
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 43
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK5
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 45
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT6
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 47
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK6
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 49
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = DQI_RATE_ORBIT7
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 51
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing data quality
+        indicator, telemetry rate code and orbit number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DQI
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 3
+      DESCRIPTION              = "Data quality indicator for this line
+        segment, where: 0 is bad data; 1 is SNR low, GCF block error; 2
+        is SNR good, GCF block bad; 3 is SNR low, GCF block good; 4 is
+        SNR good, GCF block good."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TELEMETRY_RATE_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 4
+      BITS                     = 3
+      DESCRIPTION              = "Telemetry rate code, where:  1 for
+        16K; 2 for 8K; 3 for 4K; 4 for 2K; 5 for 1K."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = ORBIT_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 7
+      BITS                     = 10
+      DESCRIPTION              = "Orbit number taken from expected
+        picture list.  For Viking Orbiter 1 Survey mission images this
+        is ORBIT_NUMBER - 1000."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = LINE_TRACK7
+    DATA_TYPE                  = VAX_INTEGER
+    START_BYTE                 = 53
+    BYTES                      = 2
+    DESCRIPTION                = "Bit string containing track and line
+        number."
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = PLAYBACK_REVERSED_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 1
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if playback is in reverse
+        order for this segment.  Track 1, 3, 5 and 7 are played-back
+        forward, 2, 4 and 6 are played-back reversed."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = DATA_ABSENCE_FLAG
+      DATA_TYPE                = INTEGER
+      START_BIT                = 2
+      BITS                     = 1
+      DESCRIPTION              = "Set to 1 if data is not present for
+        this segment."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = TRACK_CODE
+      DATA_TYPE                = INTEGER
+      START_BIT                = 3
+      BITS                     = 3
+      DESCRIPTION              = "Track code, where:  0 is Track 7; 1 is
+        Track 3; 2 is Track 2; 3 is error; 4 is Track 6; 5 is Track 1; 6
+        is Track 5; 7 is Track 4."
+    END_OBJECT                 = BIT_COLUMN
+
+    OBJECT                     = BIT_COLUMN
+      NAME                     = SEGMENT_LINE_NUMBER
+      DATA_TYPE                = INTEGER
+      START_BIT                = 6
+      BITS                     = 11
+      DESCRIPTION              = "Line number extracted from segment
+        header."
+    END_OBJECT                 = BIT_COLUMN
+
+  END_OBJECT                   = COLUMN
+
+  OBJECT                       = COLUMN
+    NAME                       = EMBEDDED_SCIENCE_DATA
+    ITEMS                      = 7
+    DATA_TYPE                  = INTEGER
+    START_BYTE                 = 55
+    ITEM_BYTES                 = 1
+    DESCRIPTION                = "Embedded low rate science data from
+        seven segments."
+  END_OBJECT                   = COLUMN
+
+END_OBJECT                     = LINE_HEADER_TABLE_STRUCTURE
+
+END
+END_OBJECT
+OBJECT                           = IMAGE
+ ENCODING_TYPE                   = HUFFMAN_FIRST_DIFFERENCE
+ LINES                           = 1056
+ LINE_SAMPLES                    = 1204
+ SAMPLE_TYPE                     = UNSIGNED_INTEGER
+ SAMPLE_BITS                     = 8
+ SAMPLE_BIT_MASK                 = 2#11111110#
+ CHECKSUM                        = 44303556
+END_OBJECT
+END
diff --git a/tests/pytests/data/f735a00/naif0012.tls b/tests/pytests/data/f735a00/naif0012.tls
new file mode 100644
index 0000000..e1afdee
--- /dev/null
+++ b/tests/pytests/data/f735a00/naif0012.tls
@@ -0,0 +1,152 @@
+KPL/LSK
+
+
+LEAPSECONDS KERNEL FILE
+===========================================================================
+
+Modifications:
+--------------
+
+2016, Jul. 14   NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2016.
+
+2015, Jan. 5    NJB  Modified file to account for the leapsecond that
+                     will occur on June 30, 2015.
+
+2012, Jan. 5    NJB  Modified file to account for the leapsecond that
+                     will occur on June 30, 2012.
+                     
+2008, Jul. 7    NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2008.
+                     
+2005, Aug. 3    NJB  Modified file to account for the leapsecond that
+                     will occur on December 31, 2005.
+                     
+1998, Jul  17   WLT  Modified file to account for the leapsecond that
+                     will occur on December 31, 1998.
+                     
+1997, Feb  22   WLT  Modified file to account for the leapsecond that
+                     will occur on June 30, 1997.
+                     
+1995, Dec  14   KSZ  Corrected date of last leapsecond from 1-1-95
+                     to 1-1-96.
+
+1995, Oct  25   WLT  Modified file to account for the leapsecond that
+                     will occur on Dec 31, 1995.
+
+1994, Jun  16   WLT  Modified file to account for the leapsecond on
+                     June 30, 1994.
+
+1993, Feb. 22  CHA   Modified file to account for the leapsecond on
+                     June 30, 1993.
+
+1992, Mar. 6   HAN   Modified file to account for the leapsecond on
+                     June 30, 1992.
+
+1990, Oct. 8   HAN   Modified file to account for the leapsecond on 
+                     Dec. 31, 1990.  
+
+
+Explanation:
+------------
+
+The contents of this file are used by the routine DELTET to compute the 
+time difference
+
+[1]       DELTA_ET  =  ET - UTC                                         
+          
+the increment to be applied to UTC to give ET. 
+
+The difference between UTC and TAI,
+
+[2]       DELTA_AT  =  TAI - UTC
+
+is always an integral number of seconds. The value of DELTA_AT was 10
+seconds in January 1972, and increases by one each time a leap second
+is declared. Combining [1] and [2] gives
+
+[3]       DELTA_ET  =  ET - (TAI - DELTA_AT)
+
+                    =  (ET - TAI) + DELTA_AT
+
+The difference (ET - TAI) is periodic, and is given by
+
+[4]       ET - TAI  =  DELTA_T_A  + K sin E 
+
+where DELTA_T_A and K are constant, and E is the eccentric anomaly of the 
+heliocentric orbit of the Earth-Moon barycenter. Equation [4], which ignores 
+small-period fluctuations, is accurate to about 0.000030 seconds.
+
+The eccentric anomaly E is given by 
+
+[5]       E = M + EB sin M
+
+where M is the mean anomaly, which in turn is given by 
+
+[6]       M = M  +  M t
+               0     1
+
+where t is the number of ephemeris seconds past J2000.
+
+Thus, in order to compute DELTA_ET, the following items are necessary.
+
+          DELTA_TA
+          K
+          EB
+          M0
+          M1
+          DELTA_AT      after each leap second.
+
+The numbers, and the formulation, are taken from the following sources.
+
+     1) Moyer, T.D., Transformation from Proper Time on Earth to 
+        Coordinate Time in Solar System Barycentric Space-Time Frame
+        of Reference, Parts 1 and 2, Celestial Mechanics 23 (1981),
+        33-56 and 57-68.
+
+     2) Moyer, T.D., Effects of Conversion to the J2000 Astronomical
+        Reference System on Algorithms for Computing Time Differences
+        and Clock Rates, JPL IOM 314.5--942, 1 October 1985.
+
+The variable names used above are consistent with those used in the 
+Astronomical Almanac.
+
+\begindata
+
+DELTET/DELTA_T_A       =   32.184
+DELTET/K               =    1.657D-3
+DELTET/EB              =    1.671D-2
+DELTET/M               = (  6.239996D0   1.99096871D-7 )
+
+DELTET/DELTA_AT        = ( 10,   @1972-JAN-1
+                           11,   @1972-JUL-1     
+                           12,   @1973-JAN-1     
+                           13,   @1974-JAN-1     
+                           14,   @1975-JAN-1          
+                           15,   @1976-JAN-1          
+                           16,   @1977-JAN-1          
+                           17,   @1978-JAN-1          
+                           18,   @1979-JAN-1          
+                           19,   @1980-JAN-1          
+                           20,   @1981-JUL-1          
+                           21,   @1982-JUL-1          
+                           22,   @1983-JUL-1          
+                           23,   @1985-JUL-1          
+                           24,   @1988-JAN-1 
+                           25,   @1990-JAN-1
+                           26,   @1991-JAN-1 
+                           27,   @1992-JUL-1
+                           28,   @1993-JUL-1
+                           29,   @1994-JUL-1
+                           30,   @1996-JAN-1 
+                           31,   @1997-JUL-1
+                           32,   @1999-JAN-1
+                           33,   @2006-JAN-1
+                           34,   @2009-JAN-1
+                           35,   @2012-JUL-1
+                           36,   @2015-JUL-1 
+                           37,   @2017-JAN-1 )
+
+\begintext
+
+
diff --git a/tests/pytests/data/f735a00/pck00009.tpc b/tests/pytests/data/f735a00/pck00009.tpc
new file mode 100644
index 0000000..bfadaab
--- /dev/null
+++ b/tests/pytests/data/f735a00/pck00009.tpc
@@ -0,0 +1,3639 @@
+KPL/PCK
+ 
+
+P_constants (PcK) SPICE kernel file
+===========================================================================
+
+        By: Nat Bachman (NAIF)    2010 March 3
+ 
+ 
+Purpose
+--------------------------------------------------------
+
+     This file makes available for use in SPICE-based application
+     software orientation and size/shape data for natural bodies. The
+     principal source of the data is a published report by the IAU/IAG
+     Working Group on Cartographic Coordinates and Rotational Elements [1].
+
+     Orientation and size/shape data not provided by this file may be
+     available in mission-specific PCK files. Such PCKs may be the preferred
+     data source for mission-related applications. Mission-specific PCKs can
+     be found in PDS archives or on the NAIF web site at URL:
+
+        http://naif.jpl.nasa.gov
+
+
+File Organization
+--------------------------------------------------------
+ 
+     The contents of this file are as follows.
+ 
+     Introductory Information:
+
+         --   Purpose
+
+         --   File Organization
+ 
+         --   Version description
+ 
+         --   Disclaimer
+ 
+         --   Sources
+ 
+         --   Explanatory notes
+ 
+         --   Body numbers and names
+ 
+
+     PcK Data:
+ 
+
+        Orientation Data
+        ----------------
+
+         --   Orientation constants for the Sun and planets.        
+              Additional items included in this section:
+
+                 - Earth north geomagnetic centered dipole values
+                   for epochs 1945-2000
+
+                 - Mars prime meridian offset "lambda_a"
+
+         --   Orientation constants for satellites
+ 
+         --   Orientation constants for asteroids Eros, Gaspra, Ida,
+              Itokawa, and Vesta
+ 
+         --   Orientation constants for comets 19P/Borrelly
+              and 9P/Tempel 1
+
+
+        Radii of Bodies
+        ---------------
+
+         --   Radii of Sun and planets
+         
+         --   Radii of satellites, where available
+         
+         --   Radii of asteroids Ceres, Eros, Gaspra, Ida, Itokawa,
+              Mathilde, Toutatis, and Vesta.
+            
+         --   Radii of comets 19P/Borrelly, Halley, 9P/Tempel 1,
+              and 81P/Wild 2
+
+
+
+Version Description
+--------------------------------------------------------
+ 
+     This file was created on March 3, 2010. This version
+     incorporates data from reference [1].
+ 
+     This file contains size, shape, and orientation data for all
+     objects described by the previous version of the file, except
+     for Kleopatra: a shape model for this body is not provided in [1]
+     because, according to this source, it had been "modeled from
+     low resolution radar data, and cannot be mapped from those
+     data."
+
+     New objects covered by this file but not the previous
+     version are:
+        
+        19P/Borrelly
+        Halley
+        9P/Tempel 1
+        81P/Wild 2
+        Ceres
+        Itokawa
+        Mathilde
+        Toutatis
+                         
+ 
+Disclaimer
+--------------------------------------------------------
+ 
+Applicability of Data
+
+     This P_constants file may not contain the parameter values that
+     you prefer. NAIF suggests that you inspect this file visually
+     before proceeding with any critical or extended data processing.
+
+File Modifications by Users
+
+     Note that this file may be readily modified by you to change
+     values or add/delete parameters. NAIF requests that you update the
+     "by line," date, and version description section if you modify
+     this file.
+     
+Known Limitations and Caveats
+
+     Accuracy
+     --------
+
+     In general, the orientation models given here are claimed by the
+     IAU/IAG Working Group Report [1] to be accurate to 0.1 degree
+     ([1], p.158). However, NAIF notes that orientation models for
+     natural satellites and asteroids have in some cases changed
+     substantially with the availability of new observational data, so
+     users are urged to investigate the suitability for their
+     applications of the models presented here.
+
+     Earth orientation
+     -----------------
+
+     NAIF strongly cautions against using the earth rotation model
+     (from [1]) for work demanding high accuracy. This model has been
+     determined by NAIF to have an error in the prime meridian location
+     of magnitude at least 150 arcseconds, with a local minimum
+     occurring during the year 1999. Regarding availability of better
+     earth orientation data for use with the SPICE system:
+
+        Earth orientation data are available from NAIF in the form of
+        binary earth PCK files. NAIF employs an automated process to
+        create these files; each time JPL's Tracking Systems and
+        Applications Section produces a new earth orientation parameter
+        (EOP) file, a new PCK is produced. These PCKs cover a roughly
+        10 year time span starting at Jan. 1, 2000. In these PCK files,
+        the following effects are accounted for in modeling the earth's
+        rotation:
+
+           - Precession:                   1976 IAU model
+
+           - Nutation:                     1980 IAU model, plus interpolated
+                                           EOP nutation corrections
+
+           - Polar motion:                 interpolated from EOP file
+
+           - True sidereal time:
+
+                  UT1 - UT1R (if needed):  given by analytic formula
+                + TAI - UT1 (or UT1R):     interpolated from EOP file
+                + UT1 - GMST:              given by analytic formula
+                + equation of equinoxes:   given by analytic formula
+
+             where
+
+                TAI    =   International Atomic Time
+                UT1    =   Greenwich hour angle of computed mean sun - 12h
+                UT1R   =   Regularized UT1
+                GMST   =   Greenwich mean sidereal time                   
+
+        These kernels are available from the NAIF web site
+
+           http://naif.jpl.nasa.gov
+
+        (follow the links to Data, generic_kernels, and PCK data) or
+
+           ftp://naif.jpl.nasa.gov/pub/naif/generic_kernels/pck
+
+        or via anonymous ftp from the server
+ 
+           naif.jpl.nasa.gov
+
+        The kernels are in the path
+
+           pub/naif/generic_kernels/pck
+
+        At this time, these kernels have file names of the form
+
+           earth_000101_yymmdd_yymmdd.bpc
+
+        The second and third dates are, respectively, the file's 
+        coverage end time and the epoch of the last datum.
+ 
+        These binary PCK files are very accurate (error < 0.1
+        microradian) for epochs preceding the epoch of the last datum.
+        For later epochs, the error rises to several microradians.
+
+        Binary PCK files giving accurate earth orientation from 1972 to
+        2007 and *low accuracy* predicted earth orientation from
+        2007 to 2037 are also available in the same location. See the
+        aareadme.txt file at the "pck" URL above for details.
+
+        Characteristics and names of the binary kernels described here
+        are subject to change. See the "pck" URL above for information
+        on current binary earth PCKs.
+
+
+     Lunar orientation
+     -----------------
+
+     The lunar orientation formula provided by this file is a
+     trigonometric polynomial approximation yielding the orientation of
+     the lunar "Mean Earth/Polar Axis" (ME) reference frame. A more
+     accurate approximation can be obtained by using both the NAIF
+     lunar frame kernel and the binary lunar orientation PCK file,
+     which are available on the NAIF web site (see URLS above)
+     and in the NAIF server's ftp area. The lunar frame kernel
+     is located in the path
+
+        pub/naif/generic_kernels/fk/satellites
+
+     and has a name of the form
+
+        moon_yymmdd.tf
+
+     The binary lunar PCK is in the path
+
+        pub/naif/generic_kernels/pck
+
+     and has a name of the form
+
+        moon_pa_dennn_yyyy-yyyy.bpc
+
+     See the "aareadme.txt" files in the paths shown above for details
+     on file contents and versions. We also suggest you refer to the
+     SPICE tutorial named "lunar_earth_pck-fk," which is available from
+     the NAIF web site.
+
+
+     Earth geomagnetic dipole
+     ------------------------
+
+     The SPICE Toolkit doesn't currently contain software to model the
+     earth's north geomagnetic centered dipole as a function of time.
+     As a convenience for users, the north dipole location from the
+     J2000 epoch was selected as a representative datum, and the
+     planetocentric longitude and latitude of this location have been
+     associated with the keywords
+       
+        BODY399_N_GEOMAG_CTR_DIPOLE_LON
+        BODY399_N_GEOMAG_CTR_DIPOLE_LAT
+     
+     Values for the earth's north geomagnetic centered dipole are
+     presented in comments as a discrete time series for the time range
+     1945-2000. For details concerning the geomagnetic field model from
+     which these values were derived, including a discussion of the
+     model's accuracy, see [9].
+ 
+
+     Mars prime meridian offset
+     --------------------------
+
+     The Mars prime meridian offset given by [5] is not used by
+     SPICE geometry software for computations involving the shape
+     of Mars (for example, in sub-observer point or surface intercept
+     computations). The value is provided for informational
+     purposes only.
+
+
+     Software limitations
+     --------------------
+
+     SPICE Toolkits prior to version N0057 cannot make use of
+     trigonometric polynomial terms in the formulas for orientation of
+     the planets. The only planets for which such terms are used are
+     Jupiter and Neptune. Use of trigonometric polynomial terms for
+     natural satellites is and has been supported for all SPICE Toolkit
+     versions.
+ 
+     The second nutation precession angle (M2) for Mars is represented
+     by a quadratic polynomial in the 2006 IAU report. The SPICELIB
+     subroutine BODEUL can not handle this term (which is extremely
+     small), so we truncate the polynomial to a linear one. The 
+     resulting orientation error has a maximum magnitude of less
+     than 0.0032 degrees over the time span 1996-2015 and less than
+     0.0082 degrees over the time span 1986-2025.
+
+
+Sources
+--------------------------------------------------------
+ 
+     The sources for the constants listed in this file are:
+
+
+        [1]   Seidelmann, P.K., Archinal, B.A., A'Hearn, M.F., 
+              Conrad, A., Consolmagno, G.J., Hestroffer, D.,
+              Hilton, J.L., Krasinsky, G.A., Neumann, G.,
+              Oberst, J., Stooke, P., Tedesco, E.F., Tholen, D.J., 
+              and Thomas, P.C. "Report of the IAU/IAG Working Group 
+              on cartographic coordinates and rotational elements: 2006."
+
+        [2]   Seidelmann, P.K., Archinal, B.A., A'Hearn, M.F., 
+              Cruikshank, D.P., Hilton, J.L., Keller, H.U., Oberst, J.,
+              Simon, J.L., Stooke, P., Tholen, D.J., and Thomas, P.C.
+              "Report of the IAU/IAG Working Group on Cartographic
+              Coordinates and Rotational Elements of the Planets and
+              Satellites: 2003."
+ 
+        [3]   Nautical Almanac Office, United States Naval Observatory
+              and H.M. Nautical Almanac Office, Rutherford Appleton
+              Laboratory (2010). "The Astronomical Almanac for
+              the Year 2010," U.S. Government Printing Office,
+              Washington, D.C.: and The Stationary Office, London.
+
+        [4]   Nautical Almanac Office, United States Naval Observatory,
+              H.M. Nautical Almanac Office, Royal Greenwich
+              Observatory, Jet Propulsion Laboratory, Bureau des
+              Longitudes, and The Time Service and Astronomy
+              Departments, United States Naval Observatory (1992).
+              "Explanatory Supplement to the Astronomical Almanac," P.
+              Kenneth Seidelmann, ed. University Science Books, 20
+              Edgehill Road, Mill Valley, CA 9494.
+
+        [5]   Duxbury, Thomas C. (2001). "IAU/IAG 2000 Mars Cartographic
+              Conventions,"  presentation to the Mars Express Data
+              Archive Working Group, Dec. 14, 2001.
+
+        [6]   Russell, C.T. and Luhmann, J.G. (1990). "Earth: Magnetic 
+              Field and Magnetosphere." <http://www-ssc.igpp.ucla.
+              edu/personnel/russell/papers/earth_mag>. Originally
+              published in "Encyclopedia of Planetary Sciences," J.H.
+              Shirley and R.W. Fainbridge, eds. Chapman and Hall,
+              New York, pp 208-211.
+
+        [7]   Russell, C.T. (1971). "Geophysical Coordinate 
+              Transformations," Cosmic Electrodynamics 2  184-186.
+              NAIF document 181.0.
+     
+        [8]   ESA/ESTEC Space Environment Information System (SPENVIS)
+              (2003). Web page:  "Dipole approximations of the
+              geomagnetic field."  <http://www.spenvis.oma.be/spenvis/
+              help/background/magfield/cd.html>.
+ 
+        [9]   International Association of Geomagnetism and Aeronomy
+              and International Union of Geodesy and Geophysics (2004).
+              Web page:  "The 9th Generation International Geomagnetic
+              Reference Field." <http://www.ngdc.noaa.gov/
+              IAGA/vmod/igrf.html>.
+                             
+        [10]  Davies, M.E., Abalakin, V.K., Bursa, M., Hunt, G.E.,
+              and Lieske, J.H. (1989). "Report of the IAU/IAG/COSPAR
+              Working Group on Cartographic Coordinates and Rotational
+              Elements of the Planets and Satellites: 1988," Celestial
+              Mechanics and Dynamical Astronomy, v.46, no.2, pp.
+              187-204.
+
+         
+     Most values are from [1]. All exceptions are 
+     commented where they occur in this file. The exceptions are:
+ 
+                 
+         --   Radii for the Sun are from [3].
+             
+         --   The second nutation precession angle (M2) for Mars is
+              represented by a quadratic polynomial in the 2000
+              IAU report. The SPICELIB subroutine BODEUL can not
+              handle this term (which is extremely small), so we
+              truncate the polynomial to a linear one.
+           
+          --  Earth north geomagnetic centered dipole values are from
+              [8]. The article [6] was used to check most of 
+              these values, and the values were also re-computed from 
+              the 9th generation IGRF [9] by Nat Bachman.
+         
+          -- The Mars prime meridian offset angle is from [5].
+
+
+     "Old values" listed are from the SPICE P_constants file
+     pck00008.tpc dated September 21, 2004. Most of these values came
+     from the 2003 IAU report [2].
+ 
+ 
+ 
+ 
+Explanatory Notes
+--------------------------------------------------------
+
+     This file, which is logically part of the SPICE P-kernel, contains
+     constants used to model the orientation, size and shape of the
+     Sun, planets, natural satellites, and selected comets and
+     asteroids. The orientation models express the direction of the
+     pole and location of the prime meridian of a body as a function of
+     time. The size/shape models ("shape models" for short) represent
+     all bodies as ellipsoids, using two equatorial radii and a polar
+     radius. Spheroids and spheres are obtained when two or all three
+     radii are equal.
+
+     The SPICE Toolkit routines that use this file are documented in
+     the SPICE "Required Reading" file pck.req. They are also 
+     documented in the "PCK" SPICE tutorial, which is available on
+     the NAIF web site.
+
+File Format
+        
+     A terse description of the PCK file format is given here. See the
+     SPICE "Required Reading" files pck.req and kernel.req for a
+     detailed explanation of the SPICE text kernel file format. The
+     files pck.req and kernel.req are included in the documentation
+     provided with the SPICE Toolkit.
+
+     The file starts out with the ``ID word'' string
+
+        KPL/PCK
+
+     This string identifies the file as a text kernel containing PCK 
+     data.
+
+     This file consists of a series of comment blocks and data blocks.
+     Comment blocks, which contain free-form descriptive or explanatory
+     text, are preceded by a \begintext token. Data blocks follow a
+     \begindata token. In order to be recognized, each of these tokens
+     must be placed on a line by itself.
+
+     The portion of the file preceding the first data block is treated
+     as a comment block; it doesn't require an initial \begintext
+     token.
+
+     This file identifies data using a series of
+
+        KEYWORD = VALUE
+
+     assignments. The left hand side of each assignment is a
+     "kernel variable" name; the right hand side is an associated value
+     or list of values. The SPICE subroutine API allows SPICE routines
+     and user applications to retrieve the set of values associated
+     with each kernel variable name.
+
+     Kernel variable names are case-sensitive and are limited to
+     32 characters in length. 
+
+     Numeric values may be integer or floating point. String values
+     are normally limited to 80 characters in length; however, SPICE
+     provides a mechanism for identifying longer, "continued" strings.
+     See the SPICE routine STPOOL for details.
+
+     String values are single quoted.
+
+     When the right hand side of an assignment is a list of values,
+     the list items may be separated by commas or simply by blanks.
+     The list must be bracketed by parentheses. Example:
+
+        BODY399_RADII = ( 6378.14 6378.14 6356.75 )
+ 
+     Any blanks preceding or following keyword names, values and equal
+     signs are ignored.
+  
+     Assignments may be spread over multiple lines, for example:
+
+        BODY399_RADII = ( 6378.14 
+                          6378.14 
+                          6356.75 )
+
+     This file may contain blank lines anywhere. Non-printing
+     characters including TAB should not be present in the file: the
+     presence of such characters may cause formatting errors when the
+     file is viewed.
+
+Time systems and reference frames
+
+     The 2006 IAU/IAG Working Group Report [1] states the time scale
+     used as the independent variable for the rotation formulas is
+     Barycentric Dynamical Time (TDB) and that the epoch of variable
+     quantities is J2000 TDB (2000 Jan 1 12:00 TDB). Throughout SPICE
+     documentation and in this file, we use the names "J2000 TDB" and
+     "J2000" for this epoch. The name "J2000.0" is equivalent.
+
+     SPICE documentation refers to the time system used in this file 
+     as either "ET" or "TDB." SPICE software makes no distinction 
+     between TDB and the time system associated with the independent
+     variable of the JPL planetary ephemerides T_eph.
+ 
+     The inertial reference frame used for the rotational elements in
+     this file is identified by [1] as the ICRF (International
+     Celestial Reference Frame). 
+
+     The SPICE PCK software that reads this file uses the label "J2000"
+     to refer to the ICRF; this is actually a mislabeling which has
+     been retained in the interest of backward compatibility. Using
+     data from this file, by means of calls to the SPICE frame
+     transformation routines, will actually compute orientation
+     relative to the ICRF.
+
+     The difference between the J2000 frame and the ICRF is
+     on the order of tens of milliarcseconds and is well below the
+     accuracy level of the formulas in this file.
+
+Orientation models
+ 
+     All of the orientation models use three Euler angles to describe
+     the orientation of the coordinate axes of the "Body Equator and
+     Prime Meridian" system with respect to an inertial system. By
+     default, the inertial system is the ICRF (labeled as "J2000"), but
+     other frames can be specified in the file. See the PCK Required
+     Reading for details.
+ 
+     The first two angles, in order, are the ICRF right ascension and
+     declination (henceforth RA and DEC) of the north pole of a body as
+     a function of time. The third angle is the prime meridian location
+     (represented by "W"), which is expressed as a rotation about the
+     north pole, and is also a function of time.
+ 
+     For each body, the expressions for the north pole's right
+     ascension and declination, as well as prime meridian location, are
+     sums (as far as the models that appear in this file are concerned)
+     of quadratic polynomials and trigonometric polynomials, where the
+     independent variable is time.
+ 
+     In this file, the time arguments in expressions always refer to
+     Barycentric Dynamical Time (TDB), measured in centuries or days
+     past a reference epoch. By default, the reference epoch is the
+     J2000 epoch, which is Julian ephemeris date 2451545.0, but other
+     epochs can be specified in the file. See the PCK Required Reading
+     for details.
+
+     Orientation models for satellites and some planets (including
+     Jupiter) involve both polynomial terms and trigonometric terms.
+     The arguments of the trigonometric terms are linear polynomials.
+     In this file, we call the arguments of these trigonometric terms
+     "nutation precession angles."
+
+     Example: 2006 IAU Model for orientation of Jupiter.  Note that 
+     these values are used as an example only; see the data area below 
+     for current values.
+
+        Right ascension
+        ---------------
+ 
+        alpha   =  268.056595 - 0.006499 T        +  0.000117 sin(Ja) 
+             0                + 0.000938 sin(Jb)  +  0.001432 sin(Jc)
+                              + 0.000030 sin(Jd)  +  0.002150 sin(Je)
+
+        Declination
+        -----------
+ 
+        delta   =   64.495303 + 0.002413 T        +  0.000050 cos(Ja)
+             0                + 0.000404 cos(Jb)  +  0.000617 cos(Jc)
+                              - 0.000013 cos(Jd)  +  0.000926 cos(Je)
+
+        Prime meridian
+        --------------
+
+        W       =  284.95  + 870.5366420 d
+ 
+
+     Here
+
+        T represents centuries past J2000 ( TDB ),
+ 
+        d represents days past J2000 ( TDB ).
+
+        Ja-Je are nutation precession angles.
+
+     In this file, the polynomials' coefficients above are assigned 
+     to kernel variable names (left-hand-side symbols) as follows
+
+        BODY599_POLE_RA        = (   268.056595     -0.006499       0. )
+        BODY599_POLE_DEC       = (    64.495303      0.002413       0. )
+        BODY599_PM             = (   284.95        870.5366420      0. )
+
+     and the trigonometric polynomials' coefficients are assigned 
+     as follows
+
+        BODY599_NUT_PREC_RA  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000117
+                                                                0.000938
+                                                                0.001432
+                                                                0.000030
+                                                                0.002150 )
+
+        BODY599_NUT_PREC_DEC = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000050
+                                                                0.000404
+                                                                0.000617
+                                                               -0.000013
+                                                                0.000926 )
+
+        BODY599_NUT_PREC_PM  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0  ) 
+
+     Note the number "599"; this is the NAIF ID code for Jupiter.
+
+     In this file, the polynomial expressions for the nutation
+     precession angles are listed along with the planet's RA, DEC, and
+     prime meridian terms. Below are the 2006 IAU nutation precession
+     angles for the Jupiter system.
+
+        J1  =   73.32      +  91472.9 T
+        J2  =   24.62      +  45137.2 T
+        J3  =  283.90      +   4850.7 T
+        J4  =  355.80      +   1191.3 T
+        J5  =  119.90      +    262.1 T
+        J6  =  229.80      +     64.3 T
+        J7  =  352.25      +   2382.6 T
+        J8  =  113.35      +   6070.0 T
+
+        J9  =  146.64      + 182945.8 T
+        J10 =   49.24      +  90274.4 T 
+
+        Ja  =   99.360714  +   4850.4046 T
+        Jb  =  175.895369  +   1191.9605 T
+        Jc  =  300.323162  +    262.5475 T
+        Jd  =  114.012305  +   6070.2476 T
+        Je  =   49.511251  +     64.3000 T
+
+     Here
+
+        T represents centuries past J2000 ( TDB )
+
+        J1-J10 and Ja-Je are the nutation precession angles. The angles
+        J9 and J10 are equal to 2*J1 and 2*J2, respectively.
+ 
+        Angles J9 and J10 are not present in [1]; they have been added
+        to fit the terms 2*J1 and 2*J2, which appear in the orientation
+        models of several satellites, into a form that can be accepted
+        by the PCK system.
+
+     The assignment of the nutation precession angles for the
+     Jupiter system is as follows:
+ 
+        BODY5_NUT_PREC_ANGLES  = (    73.32      91472.9
+                                      24.62      45137.2
+                                     283.90       4850.7
+                                     355.80       1191.3
+                                     119.90        262.1
+                                     229.80         64.3
+                                     352.25       2382.6
+                                     113.35       6070.0   
+                                     146.64     182945.8
+                                      49.24      90274.4  
+                                      99.360714   4850.4046
+                                     175.895369   1191.9605
+                                     300.323162    262.5475
+                                     114.012305   6070.2476
+                                      49.511251     64.3000  )
+
+     You'll see an additional symbol grouped with the ones listed
+     above; it is
+ 
+        BODY599_LONG_AXIS
+ 
+     This term is zero for all bodies except Mars. It represents the
+     angular offset between the meridian containing the longest axis of
+     the triaxial ellipsoid used to model a body's surface and the
+     prime meridian of the body.
+
+     The pattern of the formulas for satellite orientation is similar
+     to that for Jupiter. Example: 2006 IAU values for Io. Again, these
+     values are used as an example only; see the data area below for
+     current values.
+ 
+        Right ascension
+        ---------------
+
+        alpha  = 268.05  -  0.009 T  + 0.094 sin(J3)  +  0.024 sin(J4)
+             0  
+
+        Declination
+        -----------
+
+        delta  =  64.50  +  0.003 T  + 0.040 cos(J3)  +  0.011 cos(J4)
+             0           
+                          
+        Prime meridian
+        --------------
+
+        W      = 200.39  +  203.4889538 d  -  0.085 sin(J3)  -  0.022 sin(J4)
+
+ 
+        d represents days past J2000.
+ 
+        J3 and J4 are nutation precession angles.
+ 
+     The polynomial terms are assigned to symbols by the statements
+ 
+        BODY501_POLE_RA       = (  268.05          -0.009      0. )
+        BODY501_POLE_DEC      = (   64.50           0.003      0. )
+        BODY501_PM            = (  200.39         203.4889538  0. )
+ 
+     The coefficients of the trigonometric terms are assigned to symbols by
+     the statements
+
+        BODY501_NUT_PREC_RA   = (    0.   0.     0.094    0.024   )
+        BODY501_NUT_PREC_DEC  = (    0.   0.     0.040    0.011   )
+        BODY501_NUT_PREC_PM   = (    0.   0.    -0.085   -0.022   )
+
+     501 is the NAIF ID code for Io.
+ 
+     SPICE software expects the models for satellite orientation to
+     follow the form of the model shown here: the polynomial portions of the
+     RA, DEC, and W expressions are expected to be quadratic, the 
+     trigonometric terms for RA and W (satellite prime meridian) are expected 
+     to be linear combinations of sines of nutation precession angles, the 
+     trigonometric terms for DEC are expected to be linear combinations of 
+     cosines of nutation precession angles, and the polynomials for the 
+     nutation precession angles themselves are expected to be linear.
+ 
+     Eventually, the software will handle more complex expressions, we
+     expect.
+ 
+ 
+Shape models
+ 
+     There is only one kind of shape model supported by the SPICE Toolkit
+     software at present: the triaxial ellipsoid. The 2006 IAU report does
+     not use any other models, except in the case of Mars, where 
+     separate values are given for the north and south polar radii.
+ 
+     For each body, three radii are listed:  The first number is
+     the largest equatorial radius (the length of the semi-axis
+     containing the prime meridian), the second number is the smaller
+     equatorial radius, and the third is the polar radius.
+ 
+     Example: Radii of the Earth.
+ 
+        BODY399_RADII     = (     6378.14    6378.14      6356.75   )
+ 
+ 
+Body Numbers and Names
+--------------------------------------------------------
+ 
+ 
+        1  Mercury barycenter
+        2  Venus barycenter
+        3  Earth barycenter
+        4  Mars barycenter
+        5  Jupiter barycenter
+        6  Saturn barycenter
+        7  Uranus barycenter
+        8  Neptune barycenter
+        9  Pluto barycenter
+        10 Sun
+
+ 
+        199 Mercury
+ 
+ 
+        299 Venus
+ 
+ 
+        399 Earth
+ 
+        301 Moon
+ 
+ 
+        499 Mars
+ 
+        401 Phobos      402 Deimos
+ 
+ 
+        599 Jupiter
+ 
+        501 Io          502 Europa      503 Ganymede    504 Callisto
+        505 Amalthea    506 Himalia     507 Elara       508 Pasiphae
+        509 Sinope      510 Lysithea    511 Carme       512 Ananke
+        513 Leda        514 Thebe       515 Adrastea    516 Metis
+ 
+ 
+        699 Saturn
+ 
+        601 Mimas       602 Enceladus   603 Tethys      604 Dione
+        605 Rhea        606 Titan       607 Hyperion    608 Iapetus
+        609 Phoebe      610 Janus       611 Epimetheus  612 Helene
+        613 Telesto     614 Calypso     615 Atlas       616 Prometheus
+        617 Pandora     618 Pan
+ 
+ 
+        799 Uranus
+ 
+        701 Ariel       702 Umbriel     703 Titania     704 Oberon
+        705 Miranda     706 Cordelia    707 Ophelia     708 Bianca
+        709 Cressida    710 Desdemona   711 Juliet      712 Portia
+        713 Rosalind    714 Belinda     715 Puck
+ 
+ 
+        899 Neptune
+ 
+        801 Triton      802 Nereid      803 Naiad       804 Thalassa
+        805 Despina     806 Galatea     807 Larissa     808 Proteus
+ 
+ 
+        999 Pluto
+ 
+        901 Charon
+ 
+ 
+        1000005 Comet 19P/Borrelly
+        1000036 Comet Halley
+        1000093 Comet 9P/Tempel 1
+        1000107 Comet 81P/Wild 2
+
+        2000001 Asteroid Ceres
+        2000004 Asteroid Vesta
+        2000216 Asteroid Kleopatra
+        2000253 Asteroid Mathilde
+        2000433 Asteroid Eros
+        2004179 Asteroid Toutatis
+        2025143 Asteroid Itokawa
+        2431010 Asteroid Ida
+        9511010 Asteroid Gaspra
+        
+ 
+Orientation Constants for the Sun and Planets
+--------------------------------------------------------
+ 
+ 
+Sun
+ 
+     Old values:
+
+        Values are from the 2003 IAU report.
+
+  
+        body10_pole_ra         = (  286.13       0.          0. )
+        body10_pole_dec        = (   63.87       0.          0. )
+        body10_pm              = (   84.10      14.18440     0. )
+        body10_long_axis       = (    0.                        )
+
+     Current values:
+ 
+        \begindata
+ 
+        BODY10_POLE_RA         = (  286.13       0.          0. )
+        BODY10_POLE_DEC        = (   63.87       0.          0. )
+        BODY10_PM              = (   84.176     14.18440     0. )
+        BODY10_LONG_AXIS       = (    0.                        )
+
+        \begintext
+ 
+Mercury
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+
+
+     Current values:
+  
+        \begindata
+
+        BODY199_POLE_RA          = (  281.01     -0.033      0. )
+        BODY199_POLE_DEC         = (   61.45     -0.005      0. )
+        BODY199_PM               = (  329.548     6.1385025  0. )
+ 
+        BODY199_LONG_AXIS        = (    0.                        )
+ 
+        \begintext
+ 
+  
+Venus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY299_POLE_RA          = (  272.76       0.          0. )
+        BODY299_POLE_DEC         = (   67.16       0.          0. )
+        BODY299_PM               = (  160.20      -1.4813688   0. )
+ 
+        BODY299_LONG_AXIS        = (    0.                        )
+ 
+        \begintext
+
+
+Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 report.
+ 
+ 
+     Current values:
+ 
+        \begindata 
+ 
+        BODY399_POLE_RA        = (    0.      -0.641         0. )
+        BODY399_POLE_DEC       = (   90.      -0.557         0. )
+        BODY399_PM             = (  190.147  360.9856235     0. )
+        BODY399_LONG_AXIS      = (    0.                        )
+
+        \begintext
+
+
+        Nutation precession angles for the Earth-Moon system:
+
+           The linear coefficients have been scaled up from degrees/day
+           to degrees/century, because the SPICELIB PCK reader expects
+           these units.  The original constants were:
+        
+                                    125.045D0   -0.0529921D0
+                                    250.089D0   -0.1059842D0
+                                    260.008D0   13.0120009D0
+                                    176.625D0   13.3407154D0
+                                    357.529D0    0.9856003D0
+                                    311.589D0   26.4057084D0
+                                    134.963D0   13.0649930D0
+                                    276.617D0    0.3287146D0
+                                     34.226D0    1.7484877D0
+                                     15.134D0   -0.1589763D0
+                                    119.743D0    0.0036096D0
+                                    239.961D0    0.1643573D0
+                                     25.053D0   12.9590088D0 
+
+
+        \begindata
+
+       
+        BODY3_NUT_PREC_ANGLES  = (  125.045         -1935.5364525000
+                                    250.089         -3871.0729050000
+                                    260.008        475263.3328725000  
+                                    176.625        487269.6299850000
+                                    357.529         35999.0509575000
+                                    311.589        964468.4993100000
+                                    134.963        477198.8693250000
+                                    276.617         12006.3007650000
+                                     34.226         63863.5132425000 
+                                     15.134         -5806.6093575000
+                                    119.743           131.8406400000
+                                    239.961          6003.1503825000 
+                                     25.053        473327.7964200000 )
+
+
+        \begintext
+ 
+
+     Earth north geomagnetic centered dipole:
+
+        Old values:
+
+           Values are from [7].  Note the year of publication was 1971.
+
+           body399_mag_north_pole_lon  =  ( -69.761 )
+           body399_mag_north_pole_lat  =  (  78.565 )
+
+
+        Current values:
+
+           The north dipole location is time-varying.  The values shown
+           below, taken from [8], represent a discrete sampling of the
+           north dipole location from 1945 to 2000. The terms DGRF and
+           IGRF refer to, respectively, "Definitive Geomagnetic
+           Reference Field" and "International Geomagnetic Reference
+           Field."  See references [6], [8], and [9] for details.
+
+           Coordinates are planetocentric. 
+
+             Data source    Lat      Lon
+             -----------   -----    ------
+              DGRF 1945    78.47    291.47
+              DGRF 1950    78.47    291.15
+              DGRF 1955    78.46    290.84
+              DGRF 1960    78.51    290.53
+              DGRF 1965    78.53    290.15
+              DGRF 1970    78.59    289.82
+              DGRF 1975    78.69    289.53
+              DGRF 1980    78.81    289.24 
+              DGRF 1985    78.97    289.10
+              DGRF 1990    79.13    288.89
+              IGRF 1995    79.30    288.59
+              IGRF 2000    79.54    288.43      
+
+
+        Values are given for the epoch 2000 and are from the final row
+        of the above table, which is from [8]. As shown by the table
+        these values constitute a low-accuracy approximation for epochs
+        not close to 2000.
+
+        \begindata
+       
+        BODY399_N_GEOMAG_CTR_DIPOLE_LON  =  ( 288.43 )
+        BODY399_N_GEOMAG_CTR_DIPOLE_LAT  =  (  79.54 )
+
+        \begintext
+
+ 
+Mars
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+   
+     Current values:
+ 
+        \begindata
+ 
+        BODY499_POLE_RA          = (  317.68143   -0.1061      0.  )
+        BODY499_POLE_DEC         = (   52.88650   -0.0609      0.  )
+        BODY499_PM               = (  176.630    350.89198226  0.  )
+
+        \begintext
+ 
+        Source [5] specifies the following value for the lambda_a term
+        (BODY499_LONG_AXIS ) for Mars. This term is the POSITIVE EAST
+        LONGITUDE, measured from the prime meridian, of the meridian
+        containing the longest axis of the reference ellipsoid.
+        (CAUTION: previous values were POSITIVE WEST.)
+
+           body499_long_axis        = (  252.  )
+ 
+        We list this lambda_a value for completeness. The IAU report
+        [1] gives equal values for both equatorial radii, so the
+        lambda_a offset does not apply to the IAU model.
+ 
+        The 2003 IAU report defines M2, the second nutation precession angle,
+        by:
+ 
+                                                2
+           192.93  +  1128.4096700 d  +  8.864 T
+ 
+        We truncate the M2 series to a linear expression, because the PCK
+        software cannot handle the quadratic term.
+ 
+        Again, the linear terms are scaled by 36525.0:
+ 
+            -0.4357640000000000       -->     -15916.28010000000
+          1128.409670000000           -->   41215163.19675000
+            -1.8151000000000000E-02   -->       -662.9652750000000
+ 
+        We also introduce a fourth nutation precession angle, which
+        is the pi/2-complement of the third angle.  This angle is used
+        in computing the prime meridian location for Deimos.  See the
+        discussion of this angle below in the section containing orientation
+        constants for Deimos.
+ 
+        \begindata
+
+        BODY4_NUT_PREC_ANGLES  = (  169.51     -15916.2801
+                                    192.93   41215163.19675
+                                     53.47       -662.965275
+                                     36.53        662.965275  )
+ 
+        \begintext
+ 
+ 
+Jupiter
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report.
+
+
+           body599_pole_ra        = (   268.05      -0.009       0. )
+           body599_pole_dec       = (    64.49       0.003       0. )
+           body599_pm             = (   284.95     870.5366420   0. )
+           body599_long_axis      = (     0.                        )
+
+           body5_nut_prec_angles  = (    73.32   91472.9
+                                         24.62   45137.2
+                                        283.90    4850.7
+                                        355.80    1191.3
+                                        119.90     262.1
+                                        229.80      64.3
+                                        352.35    2382.6
+                                        113.35    6070.0   
+                                        146.64  182945.8
+                                         49.24   90274.4  )
+ 
+
+                   
+     Current values:
+ 
+        The number of nutation precession angles is 15. The ninth and
+        tenth are twice the first and second, respectively. The
+        eleventh through fifteenth correspond to angles JA-JE in
+        the 2006 IAU report; angles JA-JE were not used prior to that
+        report.
+
+        \begindata
+ 
+ 
+        BODY599_POLE_RA        = (   268.056595     -0.006499       0. )
+        BODY599_POLE_DEC       = (    64.495303      0.002413       0. )
+        BODY599_PM             = (   284.95        870.5366420      0. )
+        BODY599_LONG_AXIS      = (     0.                        )
+ 
+        BODY599_NUT_PREC_RA  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000117
+                                                                0.000938
+                                                                0.001432
+                                                                0.000030
+                                                                0.002150 )
+
+        BODY599_NUT_PREC_DEC = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.000050
+                                                                0.000404
+                                                                0.000617
+                                                               -0.000013
+                                                                0.000926 )
+
+        BODY599_NUT_PREC_PM  = ( 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.  0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0
+                                                                0.0  ) 
+
+
+        BODY5_NUT_PREC_ANGLES  = (    73.32      91472.9
+                                      24.62      45137.2
+                                     283.90       4850.7
+                                     355.80       1191.3
+                                     119.90        262.1
+                                     229.80         64.3
+                                     352.25       2382.6
+                                     113.35       6070.0   
+                                     146.64     182945.8
+                                      49.24      90274.4  
+                                      99.360714   4850.4046
+                                     175.895369   1191.9605
+                                     300.323162    262.5475
+                                     114.012305   6070.2476
+                                      49.511251     64.3000  )
+        \begintext
+ 
+ 
+Saturn
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+
+     Current values:
+ 
+        \begindata
+
+        BODY699_POLE_RA        = (    40.589    -0.036      0.  )
+        BODY699_POLE_DEC       = (    83.537    -0.004      0.  )
+        BODY699_PM             = (    38.90    810.7939024  0.  )
+        BODY699_LONG_AXIS      = (     0.                       )
+ 
+        \begintext
+ 
+        The first seven angles given here are the angles S1 
+        through S7 from the 2000 report; the eighth and
+        ninth angles are 2*S1 and 2*S2, respectively.
+ 
+ 
+        \begindata
+
+        BODY6_NUT_PREC_ANGLES  = (  353.32   75706.7
+                                     28.72   75706.7  
+                                    177.40  -36505.5 
+                                    300.00   -7225.9 
+                                    316.45     506.2
+                                    345.20   -1016.3  
+                                     29.80     -52.1
+                                    706.64  151413.4
+                                     57.44  151413.4  )
+        \begintext
+ 
+ 
+Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY799_POLE_RA        = (  257.311     0.         0.  )
+        BODY799_POLE_DEC       = (  -15.175     0.         0.  )
+        BODY799_PM             = (  203.81   -501.1600928  0.  )
+        BODY799_LONG_AXIS      = (    0.                       )
+ 
+        \begintext
+        
+        The first 16 angles given here are the angles U1 
+        through U16 from the 2000 report; the 17th and
+        18th angles are 2*U11 and 2*U12, respectively.
+        
+        \begindata
+         
+        BODY7_NUT_PREC_ANGLES  = (  115.75   54991.87
+                                    141.69   41887.66
+                                    135.03   29927.35
+                                     61.77   25733.59  
+                                    249.32   24471.46
+                                     43.86   22278.41 
+                                     77.66   20289.42  
+                                    157.36   16652.76  
+                                    101.81   12872.63   
+                                    138.64    8061.81
+                                    102.23   -2024.22 
+                                    316.41    2863.96  
+                                    304.01     -51.94  
+                                    308.71     -93.17 
+                                    340.82     -75.32 
+                                    259.14    -504.81 
+                                    204.46   -4048.44
+                                    632.82    5727.92     )
+                                    
+        \begintext
+ 
+ 
+ 
+Neptune
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+
+        \begindata        
+ 
+           BODY899_POLE_RA        = (  299.36     0.         0. )
+           BODY899_POLE_DEC       = (   43.46     0.         0. )
+           BODY899_PM             = (  253.18   536.3128492  0. )
+           BODY899_LONG_AXIS      = (    0.                     )
+
+
+           BODY899_NUT_PREC_RA    = (  0.70 0. 0. 0. 0. 0. 0. 0. ) 
+           BODY899_NUT_PREC_DEC   = ( -0.51 0. 0. 0. 0. 0. 0. 0. )
+           BODY899_NUT_PREC_PM    = ( -0.48 0. 0. 0. 0. 0. 0. 0. )
+
+        \begintext
+ 
+           The 2000 report defines the nutation precession angles
+ 
+              N, N1, N2, ... , N7
+ 
+           and also uses the multiples of N1 and N7
+ 
+              2*N1
+ 
+           and
+ 
+              2*N7, 3*N7, ..., 9*N7
+ 
+           In this file, we treat the angles and their multiples as
+           separate angles.  In the kernel variable
+ 
+              BODY8_NUT_PREC_ANGLES
+ 
+           the order of the angles is
+ 
+              N, N1, N2, ... , N7, 2*N1, 2*N7, 3*N7, ..., 9*N7
+ 
+           Each angle is defined by a linear polynomial, so two
+           consecutive array elements are allocated for each
+           angle.  The first term of each pair is the constant term,
+           the second is the linear term.
+ 
+        \begindata 
+
+              BODY8_NUT_PREC_ANGLES = (   357.85         52.316
+                                          323.92      62606.6
+                                          220.51      55064.2 
+                                          354.27      46564.5
+                                           75.31      26109.4 
+                                           35.36      14325.4
+                                          142.61       2824.6  
+                                          177.85         52.316 
+                                          647.840    125213.200
+                                          355.700       104.632
+                                          533.550       156.948
+                                          711.400       209.264
+                                          889.250       261.580
+                                         1067.100       313.896
+                                         1244.950       366.212
+                                         1422.800       418.528
+                                         1600.650       470.844   )
+                                         
+        \begintext
+ 
+ 
+ 
+Pluto
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report. 
+ 
+        BODY999_POLE_RA        = (  313.02    0.         0.   )
+        BODY999_POLE_DEC       = (    9.09    0.         0.   )
+        BODY999_PM             = (  236.77  -56.3623195  0.   )
+        BODY999_LONG_AXIS      = (    0.                      )
+
+
+     Current values:
+ 
+        \begindata
+ 
+        BODY999_POLE_RA        = (  312.993   0.          0. )
+        BODY999_POLE_DEC       = (    6.163   0.          0. )
+        BODY999_PM             = (  237.305  -56.3625225  0. )
+        BODY999_LONG_AXIS      = (    0.                     )
+
+        \begintext
+ 
+ 
+ 
+ 
+Orientation constants for the satellites
+--------------------------------------------------------
+ 
+ 
+Satellites of Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+
+ 
+     New values:
+ 
+        \begindata
+ 
+ 
+
+
+
+        BODY301_POLE_RA      = (  269.9949        0.0031        0.      )
+        BODY301_POLE_DEC     = (   66.5392        0.0130        0.      )
+        BODY301_PM           = (   38.3213       13.17635815   -1.4D-12 )
+        BODY301_LONG_AXIS    = (    0.                                  )
+   
+        BODY301_NUT_PREC_RA  = (   -3.8787   -0.1204   0.0700   -0.0172
+                                    0.0       0.0072   0.0       0.0
+                                    0.0      -0.0052   0.0       0.0
+                                    0.0043                              )
+        
+        BODY301_NUT_PREC_DEC = (   1.5419     0.0239  -0.0278    0.0068
+                                   0.0       -0.0029   0.0009    0.0
+                                   0.0        0.0008   0.0       0.0     
+                                  -0.0009                               )
+        
+        BODY301_NUT_PREC_PM  = (   3.5610     0.1208  -0.0642    0.0158
+                                   0.0252    -0.0066  -0.0047   -0.0046
+                                   0.0028     0.0052   0.0040    0.0019
+                                  -0.0044                               )
+        \begintext
+ 
+
+ 
+Satellites of Mars
+ 
+ 
+     Phobos
+ 
+          Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+          Current values:
+ 
+            The quadratic prime meridian term is scaled by 1/36525**2:
+ 
+               8.864000000000000   --->   6.6443009930565219E-09
+ 
+        \begindata
+ 
+          BODY401_POLE_RA  = ( 317.68    -0.108     0.                     )
+          BODY401_POLE_DEC = (  52.90    -0.061     0.                     )
+          BODY401_PM       = (  35.06  1128.8445850 6.6443009930565219E-09 )
+                                       
+          BODY401_LONG_AXIS     = (    0.   )
+ 
+          BODY401_NUT_PREC_RA   = (   1.79    0.    0.   0. )
+          BODY401_NUT_PREC_DEC  = (  -1.08    0.    0.   0. )
+          BODY401_NUT_PREC_PM   = (  -1.42   -0.78  0.   0. )
+
+
+        \begintext
+ 
+ 
+     Deimos
+ 
+        Old values:
+ 
+           Values are unchanged in the 2006 IAU report.
+ 
+ 
+        New values:
+ 
+           The Deimos prime meridian expression is:
+ 
+ 
+                                                     2
+              W = 79.41  +  285.1618970 d  -  0.520 T  -  2.58 sin M
+                                                                    3
+ 
+                                                       +  0.19 cos M .
+                                                                    3
+ 
+ 
+           At the present time, the PCK kernel software (the routine
+           BODEUL in particular) cannot handle the cosine term directly,
+           but we can represent it as
+ 
+              0.19 sin M
+                        4
+ 
+           where
+ 
+              M   =  90.D0 - M
+               4              3
+ 
+           Therefore, the nutation precession angle assignments for Phobos
+           and Deimos contain four coefficients rather than three.
+ 
+           The quadratic prime meridian term is scaled by 1/36525**2:
+ 
+              -0.5200000000000000  --->   -3.8978300049519307E-10
+ 
+        \begindata
+ 
+           BODY402_POLE_RA       = (  316.65     -0.108       0.           )
+           BODY402_POLE_DEC      = (   53.52     -0.061       0.           )
+           BODY402_PM            = (   79.41    285.1618970  -3.897830D-10 )
+           BODY402_LONG_AXIS     = (    0.                                 )
+ 
+           BODY402_NUT_PREC_RA   = (    0.   0.   2.98    0.   )
+           BODY402_NUT_PREC_DEC  = (    0.   0.  -1.78    0.   )
+           BODY402_NUT_PREC_PM   = (    0.   0.  -2.58    0.19 )
+
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Jupiter
+ 
+ 
+     Io
+ 
+          Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+          Current values:
+         
+        \begindata
+ 
+        BODY501_POLE_RA       = (  268.05          -0.009      0. )
+        BODY501_POLE_DEC      = (   64.50           0.003      0. )
+        BODY501_PM            = (  200.39         203.4889538  0. )
+        BODY501_LONG_AXIS     = (    0.                           )
+ 
+        BODY501_NUT_PREC_RA   = (    0.   0.     0.094    0.024   )
+        BODY501_NUT_PREC_DEC  = (    0.   0.     0.040    0.011   )
+        BODY501_NUT_PREC_PM   = (    0.   0.    -0.085   -0.022   )
+
+        \begintext
+ 
+ 
+ 
+     Europa
+ 
+ 
+        Old values:
+
+           Values are from the 2003 IAU report.
+
+
+        body502_pole_ra       = (  268.08          -0.009      0.   )
+        body502_pole_dec      = (   64.51           0.003      0.   )
+        body502_pm            = (   35.67         101.3747235  0.   )
+        body502_long_axis     = (    0.                             )
+ 
+        body502_nut_prec_ra   = ( 0. 0. 0.   1.086   0.060   0.015   0.009 )
+        body502_nut_prec_dec  = ( 0. 0. 0.   0.468   0.026   0.007   0.002 )
+        body502_nut_prec_pm   = ( 0. 0. 0.  -0.980  -0.054  -0.014  -0.008 )
+        
+
+        Current values:
+ 
+        \begindata 
+ 
+        BODY502_POLE_RA       = (  268.08          -0.009      0.   )
+        BODY502_POLE_DEC      = (   64.51           0.003      0.   )
+        BODY502_PM            = (   36.022        101.3747235  0.   )
+        BODY502_LONG_AXIS     = (    0.                             )
+ 
+        BODY502_NUT_PREC_RA   = ( 0. 0. 0.   1.086   0.060   0.015   0.009 )
+        BODY502_NUT_PREC_DEC  = ( 0. 0. 0.   0.468   0.026   0.007   0.002 )
+        BODY502_NUT_PREC_PM   = ( 0. 0. 0.  -0.980  -0.054  -0.014  -0.008 )
+ 
+        \begintext
+ 
+ 
+     Ganymede
+ 
+        Old values:
+ 
+             Values are unchanged in the 2006 IAU report.
+ 
+
+        Current values:
+        
+        \begindata
+    
+        BODY503_POLE_RA       = (  268.20         -0.009       0.  )
+        BODY503_POLE_DEC      = (   64.57          0.003       0.  )
+        BODY503_PM            = (   44.064        50.3176081   0.  )
+        BODY503_LONG_AXIS     = (    0.                            )
+
+        BODY503_NUT_PREC_RA   = ( 0. 0. 0.  -0.037   0.431   0.091   )
+        BODY503_NUT_PREC_DEC  = ( 0. 0. 0.  -0.016   0.186   0.039   )
+        BODY503_NUT_PREC_PM   = ( 0. 0. 0.   0.033  -0.389  -0.082   )
+ 
+        \begintext
+ 
+ 
+     Callisto
+ 
+        Old values:
+
+             Values are unchanged in the 2006 IAU report.
+        
+        
+        Current values:
+        
+        
+        \begindata
+  
+        BODY504_POLE_RA       = (   268.72    -0.009       0.  )
+        BODY504_POLE_DEC      = (    64.83     0.003       0.  )
+        BODY504_PM            = (   259.51    21.5710715   0.  )
+        BODY504_LONG_AXIS     = (     0.                       )
+ 
+        BODY504_NUT_PREC_RA   = ( 0. 0. 0. 0.  -0.068   0.590  0.   0.010 )
+        BODY504_NUT_PREC_DEC  = ( 0. 0. 0. 0.  -0.029   0.254  0.  -0.004 )
+        BODY504_NUT_PREC_PM   = ( 0. 0. 0. 0.   0.061  -0.533  0.  -0.009 )
+ 
+        \begintext
+ 
+ 
+     Amalthea
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.        
+        
+        Current values:
+         
+        \begindata
+ 
+        BODY505_POLE_RA       = (   268.05    -0.009      0.  )
+        BODY505_POLE_DEC      = (    64.49     0.003      0.  )
+        BODY505_PM            = (   231.67   722.6314560  0.  )
+        BODY505_LONG_AXIS     = (     0.                      )
+ 
+        BODY505_NUT_PREC_RA  = ( -0.84  0. 0. 0. 0. 0. 0. 0.   0.01  0. )
+        BODY505_NUT_PREC_DEC = ( -0.36  0. 0. 0. 0. 0. 0. 0.   0.    0. )
+        BODY505_NUT_PREC_PM  = (  0.76  0. 0. 0. 0. 0. 0. 0.  -0.01  0. )
+ 
+        \begintext
+ 
+ 
+     Thebe
+ 
+ 
+        Old values:
+                
+           Values are unchanged in the 2006 IAU report.                
+          
+        Current values:
+        
+        \begindata
+ 
+        BODY514_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY514_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY514_PM            = (    8.56    533.7004100   0.  )
+        BODY514_LONG_AXIS     = (    0.                        )
+ 
+        BODY514_NUT_PREC_RA  = ( 0.  -2.11  0. 0. 0. 0. 0. 0. 0.  0.04 )
+        BODY514_NUT_PREC_DEC = ( 0.  -0.91  0. 0. 0. 0. 0. 0. 0.  0.01 )
+        BODY514_NUT_PREC_PM  = ( 0.   1.91  0. 0. 0. 0. 0. 0. 0. -0.04 )
+ 
+        \begintext
+ 
+ 
+     Adrastea
+ 
+        Old values:
+                
+           Values are unchanged in the 2006 IAU report.                
+        
+        Current values:
+        
+        \begindata
+ 
+ 
+ 
+        BODY515_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY515_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY515_PM            = (   33.29   1206.9986602   0.  )
+        BODY515_LONG_AXIS     = (    0.                        )
+
+        \begintext
+ 
+ 
+     Metis
+  
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+              
+        Current values:
+           
+        \begindata
+
+        BODY516_POLE_RA       = (  268.05     -0.009       0.  )
+        BODY516_POLE_DEC      = (   64.49      0.003       0.  )
+        BODY516_PM            = (  346.09   1221.2547301   0.  )
+        BODY516_LONG_AXIS     = (    0.                        )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Saturn
+      
+     
+     Mimas
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+               
+        Current values:
+ 
+        \begindata
+  
+           BODY601_POLE_RA       = (   40.66     -0.036      0.  )
+           BODY601_POLE_DEC      = (   83.52     -0.004      0.  )
+           BODY601_PM            = (  337.46    381.9945550  0.  )
+           BODY601_LONG_AXIS     = (     0.                      )
+ 
+           BODY601_NUT_PREC_RA   = ( 0. 0.   13.56  0.    0.    0. 0. 0. 0. )
+           BODY601_NUT_PREC_DEC  = ( 0. 0.   -1.53  0.    0.    0. 0. 0. 0. )
+           BODY601_NUT_PREC_PM   = ( 0. 0.  -13.48  0.  -44.85  0. 0. 0. 0. )
+
+        \begintext
+ 
+ 
+     Enceladus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report.  
+               
+        Current values:
+ 
+        \begindata
+ 
+           BODY602_POLE_RA       = (   40.66    -0.036       0. )
+           BODY602_POLE_DEC      = (   83.52    -0.004       0. )
+           BODY602_PM            = (    2.82   262.7318996   0. )
+           BODY602_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+     Tethys
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+ 
+           BODY603_POLE_RA       = (   40.66    -0.036       0. )
+           BODY603_POLE_DEC      = (   83.52    -0.004       0. )
+           BODY603_PM            = (   10.45   190.6979085   0. )
+           BODY603_LONG_AXIS     = (    0.                      )
+ 
+           BODY603_NUT_PREC_RA   = ( 0. 0. 0.   9.66   0.    0.  0.  0.  0. )
+           BODY603_NUT_PREC_DEC  = ( 0. 0. 0.  -1.09   0.    0.  0.  0.  0. )
+           BODY603_NUT_PREC_PM   = ( 0. 0. 0.  -9.60   2.23  0.  0.  0.  0. )
+
+        \begintext
+ 
+ 
+     Dione
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+   
+           BODY604_POLE_RA       = (  40.66      -0.036      0.  )
+           BODY604_POLE_DEC      = (  83.52      -0.004      0.  )
+           BODY604_PM            = (  357.00    131.5349316  0.  )
+           BODY604_LONG_AXIS     = (    0.                       )
+
+        \begintext
+ 
+ 
+ 
+     Rhea
+     
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+   
+           BODY605_POLE_RA       = (   40.38   -0.036       0. )
+           BODY605_POLE_DEC      = (   83.55   -0.004       0. )
+           BODY605_PM            = (  235.16   79.6900478   0. )
+           BODY605_LONG_AXIS     = (    0.                     )
+ 
+           BODY605_NUT_PREC_RA   = ( 0. 0. 0. 0. 0.   3.10   0. 0. 0. )
+           BODY605_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0.  -0.35   0. 0. 0. )
+           BODY605_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  -3.08   0. 0. 0. )
+ 
+        \begintext
+ 
+ 
+ 
+     Titan
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY606_POLE_RA       = (    36.41   -0.036      0. )
+           BODY606_POLE_DEC      = (    83.94   -0.004      0. )
+           BODY606_PM            = (   189.64   22.5769768  0. )
+           BODY606_LONG_AXIS     = (     0.                    )
+ 
+           BODY606_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 0.  2.66  0. 0 )
+           BODY606_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 0. -0.30  0. 0 )
+           BODY606_NUT_PREC_PM   = ( 0. 0. 0. 0. 0. 0. -2.64  0. 0 )
+
+        \begintext
+ 
+ 
+ 
+     Hyperion
+ 
+         The IAU report does not give an orientation model for Hyperion.
+         Hyperion's rotation is in chaotic and is not predictable for
+         long periods.
+
+ 
+     Iapetus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY608_POLE_RA       = (   318.16  -3.949      0.  )
+           BODY608_POLE_DEC      = (    75.03  -1.143      0.  )
+           BODY608_PM            = (   350.20   4.5379572  0.  )
+           BODY608_LONG_AXIS     = (     0.                    )
+
+        \begintext
+ 
+ 
+ 
+     Phoebe
+ 
+
+        Old values:
+        
+           Values are from the 2003 IAU report. 
+  
+           body609_pole_ra       = ( 355.00       0.         0.  )
+           body609_pole_dec      = (  68.70       0.         0.  )
+           body609_pm            = ( 304.70     930.8338720  0.  )
+           body609_long_axis     = (    0.                       )
+
+        Current values:
+ 
+        \begindata 
+  
+           BODY609_POLE_RA       = ( 356.90       0.         0.  )
+           BODY609_POLE_DEC      = (  77.80       0.         0.  )
+           BODY609_PM            = ( 178.58     931.639      0.  )
+           BODY609_LONG_AXIS     = (    0.                       )
+
+        \begintext
+ 
+ 
+     Janus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY610_POLE_RA       = (  40.58    -0.036       0. )
+           BODY610_POLE_DEC      = (  83.52    -0.004       0. )
+           BODY610_PM            = (  58.83   518.2359876   0. )
+           BODY610_LONG_AXIS     = (   0.                      )
+ 
+           BODY610_NUT_PREC_RA   = ( 0. -1.623  0. 0. 0. 0. 0. 0.  0.023 )
+           BODY610_NUT_PREC_DEC  = ( 0. -0.183  0. 0. 0. 0. 0. 0.  0.001 )
+           BODY610_NUT_PREC_PM   = ( 0.  1.613  0. 0. 0. 0. 0. 0. -0.023 )
+ 
+        \begintext
+ 
+ 
+ 
+     Epimetheus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+         
+        Current values:
+ 
+        \begindata 
+  
+           BODY611_POLE_RA       = (  40.58    -0.036        0. )
+           BODY611_POLE_DEC      = (  83.52    -0.004        0. )
+           BODY611_PM            = ( 293.87   518.4907239    0. )
+           BODY611_LONG_AXIS     = (   0.                       )
+ 
+           BODY611_NUT_PREC_RA   = ( -3.153   0. 0. 0. 0. 0. 0.   0.086  0. )
+           BODY611_NUT_PREC_DEC  = ( -0.356   0. 0. 0. 0. 0. 0.   0.005  0. )
+           BODY611_NUT_PREC_PM   = (  3.133   0. 0. 0. 0. 0. 0.  -0.086  0. )
+
+        \begintext
+ 
+ 
+ 
+     Helene
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY612_POLE_RA       = (  40.85     -0.036        0. )
+           BODY612_POLE_DEC      = (  83.34     -0.004        0. )
+           BODY612_PM            = ( 245.12    131.6174056    0. )
+           BODY612_LONG_AXIS     = (   0.                        )
+
+        \begintext
+ 
+ 
+ 
+     Telesto
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY613_POLE_RA       = ( 50.51    -0.036      0.  )
+           BODY613_POLE_DEC      = ( 84.06    -0.004      0.  )
+           BODY613_PM            = ( 56.88   190.6979332  0.  )
+           BODY613_LONG_AXIS     = (  0.                      )
+
+        \begintext
+
+ 
+ 
+     Calypso
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY614_POLE_RA       = (   36.41    -0.036        0.  )
+           BODY614_POLE_DEC      = (   85.04    -0.004        0.  )
+           BODY614_PM            = (  153.51   190.6742373    0.  )
+           BODY614_LONG_AXIS     = (    0.                        )
+ 
+        \begintext
+ 
+ 
+ 
+     Atlas
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY615_POLE_RA       = (   40.58     -0.036      0. )
+           BODY615_POLE_DEC      = (   83.53     -0.004      0. )  
+           BODY615_PM            = (  137.88    598.3060000  0. )
+           BODY615_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+     Prometheus
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY616_POLE_RA       = (  40.58      -0.036    )
+           BODY616_POLE_DEC      = (  83.53      -0.004    )
+           BODY616_PM            = ( 296.14     587.289000 )
+           BODY616_LONG_AXIS     = (   0.                  )
+ 
+        \begintext
+ 
+ 
+ 
+     Pandora
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY617_POLE_RA       = (   40.58     -0.036      0.  )
+           BODY617_POLE_DEC      = (   83.53     -0.004      0.  )
+           BODY617_PM            = (  162.92    572.7891000  0.  )
+           BODY617_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+ 
+ 
+ 
+     Pan
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY618_POLE_RA       = (   40.6     -0.036       0. )
+           BODY618_POLE_DEC      = (   83.5     -0.004       0. )
+           BODY618_PM            = (   48.8    626.0440000   0. )
+           BODY618_LONG_AXIS     = (    0.                      )
+
+        \begintext
+ 
+ 
+ 
+ 
+ 
+Satellites of Uranus
+ 
+  
+ 
+     Ariel
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+
+        \begindata 
+
+           BODY701_POLE_RA       = ( 257.43     0.          0. )
+           BODY701_POLE_DEC      = ( -15.10     0.          0. )
+           BODY701_PM            = ( 156.22  -142.8356681   0. )
+           BODY701_LONG_AXIS     = (   0.                      )
+ 
+           BODY701_NUT_PREC_RA   = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.    0.    0.29 )
+ 
+           BODY701_NUT_PREC_DEC  = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.    0.    0.28 )
+ 
+           BODY701_NUT_PREC_PM   = (  0. 0. 0. 0. 0.
+                                      0. 0. 0. 0. 0.  0.   0.05   0.08 )
+        \begintext
+ 
+ 
+ 
+     Umbriel
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY702_POLE_RA       = (  257.43     0.          0. )
+           BODY702_POLE_DEC      = (  -15.10     0.          0. )
+           BODY702_PM            = (  108.05   -86.8688923   0. )
+           BODY702_LONG_AXIS     = (    0.                      )
+ 
+           BODY702_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.   0.    0.   0.21 )
+ 
+           BODY702_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.   0.    0.   0.20 )
+ 
+           BODY702_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0.  -0.09  0.   0.06 )
+
+        \begintext
+ 
+ 
+ 
+     Titania
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY703_POLE_RA       = (  257.43    0.          0. )
+           BODY703_POLE_DEC      = (  -15.10    0.          0. )
+           BODY703_PM            = (   77.74  -41.3514316   0. )
+           BODY703_LONG_AXIS     = (    0.                     )
+ 
+           BODY703_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.29 )
+ 
+           BODY703_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.28 )
+ 
+           BODY703_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0. 0. 0. 0.   0.08 )
+        \begintext
+ 
+ 
+ 
+     Oberon
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY704_POLE_RA       = (  257.43    0.          0. )
+           BODY704_POLE_DEC      = (  -15.10    0.          0. )
+           BODY704_PM            = (    6.77  -26.7394932   0. )
+           BODY704_LONG_AXIS     = (    0.                     )
+ 
+ 
+           BODY704_NUT_PREC_RA   = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.16 )
+ 
+           BODY704_NUT_PREC_DEC  = ( 0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0. 
+                                     0. 0. 0. 0. 0.   0.16 )
+ 
+           BODY704_NUT_PREC_PM   = ( 0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.  
+                                     0. 0. 0. 0. 0.   0.04 )
+        \begintext
+ 
+ 
+ 
+     Miranda
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+
+           BODY705_POLE_RA      = (  257.43     0.         0. )
+           BODY705_POLE_DEC     = (  -15.08     0.         0. )
+           BODY705_PM           = (   30.70  -254.6906892  0. )
+           BODY705_LONG_AXIS    = (    0.                     )
+ 
+           BODY705_NUT_PREC_RA  = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    4.41   0.     0.    0.    0. 
+                                    0.    -0.04   0.             )
+ 
+           BODY705_NUT_PREC_DEC = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    4.25   0.     0.    0.    0. 
+                                    0.    -0.02   0.             )
+ 
+           BODY705_NUT_PREC_PM  = ( 0.     0.     0.    0.    0.  
+                                    0.     0.     0.    0.    0. 
+                                    1.15  -1.27   0.    0.    0.  
+                                    0.    -0.09   0.15           )
+        \begintext
+ 
+ 
+ 
+     Cordelia
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY706_POLE_RA      = (   257.31      0.         0.  )
+           BODY706_POLE_DEC     = (   -15.18      0.         0.  )
+           BODY706_PM           = (   127.69  -1074.5205730  0.  )
+           BODY706_LONG_AXIS    = (     0.                       )
+ 
+           BODY706_NUT_PREC_RA  = (   -0.15    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY706_NUT_PREC_DEC = (    0.14    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )  
+
+           BODY706_NUT_PREC_PM  = (   -0.04    0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             ) 
+ 
+        \begintext
+ 
+ 
+
+     Ophelia
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+   
+           BODY707_POLE_RA      = (  257.31     0.         0. )
+           BODY707_POLE_DEC     = (  -15.18     0.         0. )
+           BODY707_PM           = (  130.35  -956.4068150  0. )
+           BODY707_LONG_AXIS    = (    0.                     )
+ 
+           BODY707_NUT_PREC_RA  = (    0.     -0.09   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY707_NUT_PREC_DEC = (    0.      0.09   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+
+           BODY707_NUT_PREC_PM  = (    0.     -0.03   0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.    0.    0.
+                                       0.      0.     0.             )
+ 
+        \begintext
+ 
+ 
+ 
+     Bianca
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY708_POLE_RA      = (  257.31     0.         0.  )
+           BODY708_POLE_DEC     = (  -15.18     0.         0.  )
+           BODY708_PM           = (  105.46  -828.3914760  0.  )
+           BODY708_LONG_AXIS    = (    0.                      )
+ 
+           BODY708_NUT_PREC_RA  = (    0.      0.    -0.16    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+           BODY708_NUT_PREC_DEC = (    0.      0.     0.16    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+           BODY708_NUT_PREC_PM  = (    0.      0.    -0.04    0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.      0.    0.
+                                       0.      0.     0.               )
+
+        \begintext
+ 
+ 
+ 
+     Cressida
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+ 
+           BODY709_POLE_RA      = (  257.31      0.          0.  )
+           BODY709_POLE_DEC     = (  -15.18      0.          0.  )
+           BODY709_PM           = (   59.16   -776.5816320   0.  )
+           BODY709_LONG_AXIS    = (    0.                        )
+ 
+
+           BODY709_NUT_PREC_RA  = (    0.      0.     0.     -0.04   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+           BODY709_NUT_PREC_DEC = (    0.      0.     0.      0.04   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+           BODY709_NUT_PREC_PM  = (    0.      0.     0.     -0.01   0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.      0.     0.
+                                       0.      0.     0.                )
+
+
+        \begintext
+ 
+ 
+ 
+     Desdemona
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+  
+           BODY710_POLE_RA      = ( 257.31      0.           0.  )
+           BODY710_POLE_DEC     = ( -15.18      0.           0.  )
+           BODY710_PM           = (  95.08   -760.0531690    0.  )
+           BODY710_LONG_AXIS    = (   0.                         )
+ 
+           BODY710_NUT_PREC_RA  = (   0.      0.     0.      0.    -0.17 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY710_NUT_PREC_DEC = (   0.      0.     0.      0.     0.16 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY710_NUT_PREC_PM  = (   0.      0.     0.      0.    -0.04  
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+
+        \begintext
+ 
+ 
+ 
+     Juliet
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY711_POLE_RA      = (  257.31     0.           0.   )
+           BODY711_POLE_DEC     = (  -15.18     0.           0.   )
+           BODY711_PM           = (  302.56  -730.1253660    0.   )
+           BODY711_LONG_AXIS    = (    0.                         )
+ 
+           BODY711_NUT_PREC_RA  = (   0.      0.     0.      0.     0.  
+                                     -0.06    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+ 
+           BODY711_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.06    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+  
+           BODY711_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                     -0.02    0.     0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                 )
+ 
+        \begintext
+ 
+ 
+ 
+     Portia
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+    
+           BODY712_POLE_RA      = (  257.31      0.           0.   )
+           BODY712_POLE_DEC     = (  -15.18      0.           0.   )
+           BODY712_PM           = (   25.03   -701.4865870    0.   )
+           BODY712_LONG_AXIS    = (    0.                          )
+ 
+           BODY712_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.     -0.09   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY712_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.09   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+           BODY712_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.     -0.02   0.      0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+        \begintext
+ 
+ 
+ 
+     Rosalind
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+   
+           BODY713_POLE_RA      = ( 257.31      0.          0.  )
+           BODY713_POLE_DEC     = ( -15.18      0.          0.  )
+           BODY713_PM           = ( 314.90   -644.6311260   0.  )
+           BODY713_LONG_AXIS    = (   0.                        )
+ 
+           BODY713_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.    -0.29    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.               )
+
+           BODY713_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.28    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.              )
+
+           BODY713_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.    -0.08    0.     0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.              )
+ 
+        \begintext
+ 
+ 
+ 
+     Belinda
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata 
+ 
+           BODY714_POLE_RA      = (   257.31      0.         0. )
+           BODY714_POLE_DEC     = (   -15.18      0.         0. )
+           BODY714_PM           = (   297.46   -577.3628170  0. )
+           BODY714_LONG_AXIS    = (     0.                      )
+ 
+           BODY714_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.     -0.03   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY714_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.03   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+
+           BODY714_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.     -0.01   0.
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                )
+        \begintext
+ 
+ 
+ 
+     Puck
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+  
+           BODY715_POLE_RA      = (  257.31      0.         0.  )
+           BODY715_POLE_DEC     = (  -15.18      0.         0.  )
+           BODY715_PM           = (   91.24   -472.5450690  0.  )
+           BODY715_LONG_AXIS    = (    0.                       )
+ 
+           BODY715_NUT_PREC_RA  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.    -0.33 
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY715_NUT_PREC_DEC = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.     0.31
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+
+           BODY715_NUT_PREC_PM  = (   0.      0.     0.      0.     0. 
+                                      0.      0.     0.      0.    -0.09
+                                      0.      0.     0.      0.     0.
+                                      0.      0.     0.                  )
+  
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Neptune
+ 
+ 
+     Triton
+ 
+       Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+ 
+        Current values:
+ 
+        \begindata
+
+           BODY801_POLE_RA       = ( 299.36     0.         0.  )
+           BODY801_POLE_DEC      = (  41.17     0.         0.  )
+           BODY801_PM            = ( 296.53   -61.2572637  0.  )
+           BODY801_LONG_AXIS     = (   0.                      )
+ 
+ 
+           BODY801_NUT_PREC_RA   = (  0.      0.      0.      0.  
+                                      0.      0.      0.    -32.35    
+                                      0.     -6.28   -2.08   -0.74       
+                                     -0.28   -0.11   -0.07   -0.02    
+                                     -0.01                         )
+ 
+ 
+           BODY801_NUT_PREC_DEC  = (  0.      0.      0.      0.  
+                                      0.      0.      0.     22.55    
+                                      0.      2.10    0.55    0.16   
+                                      0.05    0.02    0.01    0.
+                                      0.                           )
+ 
+ 
+           BODY801_NUT_PREC_PM   = (  0.      0.      0.      0.  
+                                      0.      0.      0.     22.25   
+                                      0.      6.73    2.05    0.74   
+                                      0.28    0.11    0.05    0.02
+                                      0.01                         )
+  
+        \begintext
+ 
+ 
+ 
+ 
+     Nereid
+ 
+        Old values:
+ 
+           Values are from the 1988 IAU report [10].  Note that this 
+           rotation model pre-dated the 1989 Voyager 2 Neptune
+           encounter.
+
+ 
+           body802_pole_ra       = (    273.48    0.        0.  )
+           body802_pole_dec      = (     67.22    0.        0.  )
+           body802_pm            = (    237.22    0.9996465 0.  )
+           body802_long_axis     = (      0.                    )
+ 
+ 
+           The report seems to have a typo:  in the nut_prec_ra expression,
+           where the report gives  -0.51 sin 3N3, we use -0.51 3N2.
+ 
+           body802_nut_prec_ra   = (  0.    -17.81
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                      2.56   -0.51   0.11   -0.03  )
+ 
+           body802_nut_prec_dec  = (  0.     -6.67
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                      0.47   -0.07   0.01          )
+ 
+           body802_nut_prec_pm   = (  0.     16.48
+                                      0.      0.     0.      0.
+                                      0.      0.     0.
+                                     -2.57    0.51 -0.11    0.02  )
+ 
+ 
+ 
+        Current values:
+ 
+           The 2006 report [1] states that values for Nereid are not
+           given because Nereid is not in synchronous rotation with Neptune
+           (p. 167).
+ 
+ 
+ 
+     Naiad
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY803_POLE_RA       = (  299.36      0.          0.  )
+           BODY803_POLE_DEC      = (   43.36      0.          0.  )
+           BODY803_PM            = (  254.06  +1222.8441209   0.  )
+           BODY803_LONG_AXIS     = (    0.                        )
+ 
+ 
+           BODY803_NUT_PREC_RA   = (    0.70     -6.49     0.      0.
+                                        0.        0.       0.      0.
+                                        0.25      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY803_NUT_PREC_DEC  = (   -0.51     -4.75     0.      0.
+                                        0.        0.       0.      0.
+                                        0.09      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY803_NUT_PREC_PM   = (   -0.48      4.40     0.      0.
+                                        0.        0.       0.      0.
+                                       -0.27      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+    
+        \begintext
+ 
+ 
+ 
+ 
+     Thalassa
+ 
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY804_POLE_RA       = (  299.36      0.          0. )
+           BODY804_POLE_DEC      = (   43.45      0.          0. )
+           BODY804_PM            = (  102.06   1155.7555612   0. )  
+           BODY804_LONG_AXIS     = (    0.                       )
+ 
+ 
+           BODY804_NUT_PREC_RA   = (    0.70      0.      -0.28    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+   
+  
+           BODY804_NUT_PREC_DEC  = (   -0.51      0.      -0.21    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0. 
+                                        0.                             )
+ 
+           BODY804_NUT_PREC_PM   = (   -0.48      0.       0.19    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0. 
+                                        0.                             )
+                                                                 
+        \begintext
+ 
+ 
+ 
+     Despina
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY805_POLE_RA       = (  299.36      0.          0. )
+           BODY805_POLE_DEC      = (   43.45      0.          0. )
+           BODY805_PM            = (  306.51  +1075.7341562   0. )
+           BODY805_LONG_AXIS     = (    0.                       )
+ 
+ 
+           BODY805_NUT_PREC_RA   = (    0.70      0.       0.     -0.09
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+ 
+           BODY805_NUT_PREC_DEC  = (   -0.51      0.       0.     -0.07
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+ 
+           BODY805_NUT_PREC_PM   = (   -0.49      0.       0.      0.06
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                              )
+        \begintext
+ 
+ 
+ 
+     Galatea
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+ 
+        \begindata
+  
+           BODY806_POLE_RA       = (   299.36      0.          0. )
+           BODY806_POLE_DEC      = (    43.43      0.          0. )
+           BODY806_PM            = (   258.09    839.6597686   0. )
+           BODY806_LONG_AXIS     = (     0.                       )
+ 
+ 
+           BODY806_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                       -0.07      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY806_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                       -0.05      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY806_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.05      0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             ) 
+        \begintext
+
+ 
+     Larissa
+ 
+ 
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+  
+        \begindata
+
+           BODY807_POLE_RA       = (   299.36     0.           0. )
+           BODY807_POLE_DEC      = (    43.41     0.           0. )
+           BODY807_PM            = (   179.41  +649.0534470    0. )
+           BODY807_LONG_AXIS     = (     0.                       )
+ 
+ 
+           BODY807_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                        0.       -0.27     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY807_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                        0.       -0.20     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+ 
+           BODY807_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.        0.19     0.      0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                            )
+        \begintext
+ 
+ 
+ 
+     Proteus
+ 
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY808_POLE_RA       = (  299.27      0.          0.  )
+           BODY808_POLE_DEC      = (   42.91      0.          0.  )
+           BODY808_PM            = (   93.38   +320.7654228   0.  )
+           BODY808_LONG_AXIS     = (    0.                        )
+ 
+ 
+           BODY808_NUT_PREC_RA   = (    0.70      0.       0.      0.
+                                        0.        0.      -0.05    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY808_NUT_PREC_DEC  = (   -0.51      0.       0.      0.
+                                        0.        0.      -0.04    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+ 
+           BODY808_NUT_PREC_PM   = (   -0.48      0.       0.      0.
+                                        0.        0.       0.04    0.
+                                        0.        0.       0.      0.
+                                        0.        0.       0.      0.
+                                        0.                             )
+   
+        \begintext
+  
+ 
+ 
+ 
+ 
+Satellites of Pluto
+ 
+     Charon
+ 
+        Old values:
+        
+           Values are from the 2003 IAU report. 
+ 
+           body901_pole_ra       = (   313.02     0.         0. )
+           body901_pole_dec      = (     9.09     0.         0. )
+           body901_pm            = (    56.77   -56.3623195  0. )
+           body901_long_axis     = (     0.                     )
+               
+        Current values:
+ 
+        \begindata
+ 
+           BODY901_POLE_RA       = (   312.993    0.         0. )
+           BODY901_POLE_DEC      = (     6.163    0.         0. )
+           BODY901_PM            = (    57.305  -56.3625225  0. )
+           BODY901_LONG_AXIS     = (     0.                     )
+
+        \begintext
+ 
+ 
+ 
+Orientation constants for Selected Comets and Asteroids
+--------------------------------------------------------
+
+
+
+19P/Borrelly
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY1000005_POLE_RA       = (   218.5      0.         0.  )
+           BODY1000005_POLE_DEC      = (   -12.5      0.         0.  )
+           BODY1000005_PM            = (   000.     390.0        0.  )
+           BODY1000005_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+
+
+
+9P/Tempel 1
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY1000093_POLE_RA       = (   294.       0.         0.  )
+           BODY1000093_POLE_DEC      = (    73.       0.         0.  )
+           BODY1000093_PM            = (   252.63   212.064      0.  )
+           BODY1000093_LONG_AXIS     = (     0.                      )
+ 
+        \begintext
+
+
+Vesta
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY2000004_POLE_RA       = (   301.      0.         0.  )
+           BODY2000004_POLE_DEC      = (    41.      0.         0.  )
+           BODY2000004_PM            = (   292.   1617.332776   0.  )
+           BODY2000004_LONG_AXIS     = (     0.                     )
+ 
+        \begintext
+
+Eros
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+
+           BODY2000433_POLE_RA       = (   11.35       0.           0. )
+           BODY2000433_POLE_DEC      = (   17.22       0.           0. )
+           BODY2000433_PM            = (  326.07    1639.38864745   0. )
+           BODY2000433_LONG_AXIS     = (    0.                         )
+ 
+        \begintext
+
+
+Itokawa
+
+
+        Current values:
+ 
+        \begindata
+
+           BODY2025143_POLE_RA       = (   90.53       0.           0. )
+           BODY2025143_POLE_DEC      = (  -66.30       0.           0. )
+           BODY2025143_PM            = (  000.0      712.143        0. )
+           BODY2025143_LONG_AXIS     = (    0.                         )
+ 
+        \begintext
+
+
+
+Ida
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+
+        Current values:
+ 
+        \begindata
+ 
+           BODY2431010_POLE_RA       = (  168.76      0.         0. )
+           BODY2431010_POLE_DEC      = (   -2.88      0.         0. )
+           BODY2431010_PM            = (  265.95  +1864.6280070  0. )
+           BODY2431010_LONG_AXIS     = (    0.                      )
+ 
+        \begintext
+
+Gaspra
+
+        Old values:
+        
+           Values are unchanged in the 2006 IAU report. 
+               
+        Current values:
+ 
+        \begindata 
+ 
+           BODY9511010_POLE_RA       = (   9.47     0.         0. )
+           BODY9511010_POLE_DEC      = (  26.70     0.         0. )
+           BODY9511010_PM            = (  83.67  1226.9114850  0. )
+           BODY9511010_LONG_AXIS     = (   0.                     )
+
+        \begintext
+
+
+
+
+
+
+
+
+
+ 
+Radii of Sun and Planets
+--------------------------------------------------------
+ 
+ 
+Sun
+ 
+     Value for the Sun is from the [3], page K7.
+ 
+        \begindata
+ 
+        BODY10_RADII      = (   696000.     696000.      696000.     )
+ 
+        \begintext
+ 
+ 
+Mercury
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY199_RADII     = ( 2439.7   2439.7   2439.7 )
+ 
+        \begintext
+ 
+ 
+Venus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY299_RADII     = ( 6051.8   6051.8   6051.8 )
+ 
+        \begintext
+ 
+ 
+Earth
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+
+        \begindata
+ 
+        BODY399_RADII     = ( 6378.14   6378.14   6356.75 )
+ 
+        \begintext
+ 
+ 
+Mars
+ 
+ 
+     Old values:
+
+        body499_radii       = (     3397.      3397.         3375.     )
+ 
+     Current values:
+
+
+        The IAU report gives separate values for the north and south
+        polar radii:
+
+           north:  3373.19
+           south:  3379.21 
+
+        We use the average of these values as the polar radius for
+        the triaxial model.
+ 
+        \begindata
+ 
+        BODY499_RADII       = ( 3396.19   3396.19   3376.20 )
+ 
+        \begintext
+ 
+ 
+ 
+Jupiter
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY599_RADII     = ( 71492   71492   66854 )
+ 
+        \begintext
+ 
+ 
+ 
+Saturn
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY699_RADII     = ( 60268   60268   54364 )
+ 
+        \begintext
+ 
+ 
+ 
+Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY799_RADII     = ( 25559   25559   24973 )
+ 
+        \begintext
+ 
+ 
+ 
+Neptune
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+  
+     Current values:
+ 
+        (Values are for the 1 bar pressure level.)
+ 
+        \begindata
+ 
+        BODY899_RADII     = ( 24764   24764  24341 )
+ 
+        \begintext
+ 
+ 
+ 
+Pluto
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY999_RADII     = ( 1195   1195   1195 )
+ 
+        \begintext
+ 
+
+
+
+Radii of Satellites
+--------------------------------------------------------
+ 
+ 
+Moon
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY301_RADII     = ( 1737.4   1737.4   1737.4 )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Mars
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY401_RADII     = ( 13.4    11.2    9.2 )
+        BODY402_RADII     = (  7.5     6.1    5.2 )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Jupiter
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report.
+ 
+     Current values:
+         
+        \begindata
+ 
+        BODY501_RADII     = ( 1829.4   1819.3   1815.7  )
+        BODY502_RADII     = ( 1564.13  1561.23  1560.93 )
+        BODY503_RADII     = ( 2632.4   2632.29  2632.35 )
+        BODY504_RADII     = ( 2409.4   2409.2   2409.3  )
+        BODY505_RADII     = (  125       73       64    )
+ 
+        \begintext
+ 
+        Only mean radii are available in the 2003 IAU report for bodies
+        506-513.
+ 
+        \begindata
+ 
+        BODY506_RADII    = (    85       85       85   )
+        BODY507_RADII    = (    40       40       40   )
+        BODY508_RADII    = (    18       18       18   )
+        BODY509_RADII    = (    14       14       14   )
+        BODY510_RADII    = (    12       12       12   )
+        BODY511_RADII    = (    15       15       15   )
+        BODY512_RADII    = (    10       10       10   )
+        BODY513_RADII    = (     5        5        5   )
+        BODY514_RADII    = (    58       49       42   )
+        BODY515_RADII    = (    10        8        7   )
+ 
+        \begintext
+ 
+        The value for the second radius for body 516 is not given in 
+        2003 IAU report.   The values given are:
+ 
+           BODY516_RADII    = (  30   ---   20   )
+ 
+        For use within the SPICE system, we use only the mean radius.
+        \begindata
+ 
+        BODY516_RADII    = (  21.5   21.5  21.5  )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Saturn
+ 
+ 
+     Old values:
+ 
+        Values are from the 2003 IAU report.
+    
+        body601_radii     = (  209.1   196.2   191.4 )
+        body602_radii     = (  256.3   247.3   244.6 )
+        body603_radii     = (  535.6   528.2   525.8 )
+        body604_radii     = (  560     560     560   )
+        body605_radii     = (  764     764     764   )
+        body606_radii     = ( 2575    2575    2575   )
+        body607_radii     = (  164     130     107   )
+        body608_radii     = (  718     718     718   )
+        body609_radii     = (  115     110     105   )
+        body610_radii     = (   97.0    95.0    77.0 )
+        body611_radii     = (   69.0    55.0    55.0 )
+ 
+ 
+        Only the first equatorial radius for Helene (body 612) was given in the
+        2003 IAU report:
+ 
+            body612_radii     = (       17.5        ---          ---     )
+ 
+        The mean radius was 16km; we used this radius for all three axes, as
+        we do for the satellites for which only the mean radius is available.
+ 
+ 
+        body612_radii     = (   16      16       16  )
+        body613_radii     = (   15      12.5     7.5 )
+        body614_radii     = (   15.0     8.0     8.0 )
+        body615_radii     = (   18.5    17.2    13.5 )
+        body616_radii     = (   74.0    50.0    34.0 )
+        body617_radii     = (   55.0    44.0    31.0 )
+  
+      
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY601_RADII     = (  207.4     196.8     190.6  )
+        BODY602_RADII     = (  256.6     251.4     248.3  )
+        BODY603_RADII     = (  540.4     531.1     527.5  )
+        BODY604_RADII     = (  563.8     561.0     560.3  )
+        BODY605_RADII     = (  767.2     762.5     763.1  )
+        BODY606_RADII     = ( 2575      2575      2575    )
+        BODY607_RADII     = (  164       130       107    )
+        BODY608_RADII     = (  747.4     747.4     712.4  )
+        BODY609_RADII     = (  108.6     107.7     101.5  )
+        BODY610_RADII     = (   97.0      95.0      77.0  )
+        BODY611_RADII     = (   69.0      55.0      55.0  )
+ 
+        \begintext
+ 
+        Only the first equatorial radius for Helene (body 612) is given in the
+        2006 IAU report:
+ 
+            BODY612_RADII     = (       17.5        ---          ---     )
+ 
+        The mean radius is 16km; we use this radius for all three axes, as
+        we do for the satellites for which only the mean radius is available.
+ 
+ 
+        \begindata
+ 
+        BODY612_RADII     = (  17.5      17.5      17.5  )
+        BODY613_RADII     = (  15        12.5       7.5  )
+        BODY614_RADII     = (  15.0       8.0       8.0  )
+        BODY615_RADII     = (  18.5      17.2      13.5  )
+        BODY616_RADII     = (  74.0      50.0      34.0  )
+        BODY617_RADII     = (  55.0      44.0      31.0  )
+ 
+        \begintext
+ 
+ 
+         For Pan, only a mean radius is given in the 2006 report.
+ 
+        \begindata
+ 
+        BODY618_RADII     = (   10       10     10   )
+ 
+        \begintext
+ 
+ 
+ 
+Satellites of Uranus
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        \begindata
+ 
+        BODY701_RADII     = (  581.1   577.9   577.7 )
+        BODY702_RADII     = (  584.7   584.7   584.7 )
+        BODY703_RADII     = (  788.9   788.9   788.9 )
+        BODY704_RADII     = (  761.4   761.4   761.4 )
+        BODY705_RADII     = (  240.4   234.2   232.9 )
+ 
+        \begintext
+ 
+        The 2000 report gives only mean radii for satellites 706--715.
+ 
+        \begindata
+ 
+        BODY706_RADII     = (   13      13      13 )
+        BODY707_RADII     = (   15      15      15 )
+        BODY708_RADII     = (   21      21      21 )
+        BODY709_RADII     = (   31      31      31 )
+        BODY710_RADII     = (   27      27      27 )
+        BODY711_RADII     = (   42      42      42 )
+        BODY712_RADII     = (   54      54      54 )
+        BODY713_RADII     = (   27      27      27 )
+        BODY714_RADII     = (   33      33      33 )
+        BODY715_RADII     = (   77      77      77 )
+ 
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Neptune
+ 
+ 
+     Old values:
+ 
+        Values are unchanged in the 2006 IAU report. 
+ 
+     Current values:
+ 
+        The 2000 report gives mean radii only for bodies 801-806.
+ 
+        \begindata
+ 
+        BODY801_RADII     = ( 1352.6  1352.6  1352.6 )
+        BODY802_RADII     = (  170     170     170   )
+        BODY803_RADII     = (   29      29     29    )
+        BODY804_RADII     = (   40      40     40    )
+        BODY805_RADII     = (   74      74     74    )
+        BODY806_RADII     = (   79      79     79    )
+ 
+        \begintext
+ 
+ 
+        The second equatorial radius for Larissa is not given in the 2000
+        report.  The available values are:
+ 
+            BODY807_RADII     = (   104     ---     89   )
+ 
+        For use within the SPICE system, we use only the mean radius.
+        \begindata
+ 
+        BODY807_RADII     = (   96      96     96   )
+        BODY808_RADII     = (  218     208    201   )
+ 
+        \begintext
+ 
+ 
+ 
+ 
+Satellites of Pluto
+ 
+     
+     Old values:
+ 
+        Values are from the 2003 IAU report. 
+
+        BODY901_RADII     = (  593     593    593   )
+             
+     Current values:
+ 
+        \begindata
+ 
+        BODY901_RADII     = (  605     605    605   )
+ 
+        \begintext
+ 
+
+
+Radii for Selected Comets and Asteroids
+--------------------------------------------------------
+
+
+19P/Borrelly
+
+
+     Current values:
+ 
+
+        The value in the data assignment below is the 
+        "effective radius."
+
+        The first principal axis length is 
+
+           3.5 km
+
+        The lengths of the other semi-axes are not provided
+        by [1].
+
+        \begindata
+ 
+        BODY1000005_RADII     = (  4.22   4.22   4.22  )
+ 
+        \begintext
+
+
+
+Halley
+
+
+     Current values:
+
+        \begindata
+ 
+        BODY1000036_RADII     = (  8.0   4.0   4.0  )
+ 
+        \begintext
+
+
+
+9P/Tempel 1
+
+
+     Current values:
+
+
+        The value in the data assignment below is the 
+        "effective radius."
+            
+        According to [1]:
+
+           The maximum and minimum radii are not properly 
+           the values of the principal semi-axes, they
+           are half the maximum and minimum values of the
+           diameter. Due to the large deviations from a
+           simple ellipsoid, they may not correspond with
+           measurements along the principal axes, or be
+           orthogonal to each other.
+
+        \begindata
+ 
+        BODY1000093_RADII     = (  3.0   3.0   3.0  )
+ 
+        \begintext
+
+
+81P/Wild 2
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY1000107_RADII     = (  2.7   1.9   1.5 )
+ 
+        \begintext
+
+
+Ceres
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000001_RADII     = ( 487.3  487.3  454.7 )
+ 
+        \begintext
+
+
+Vesta
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000004_RADII     = ( 289.  280.  229.  )
+ 
+        \begintext
+
+
+Toutatis
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2004179_RADII     = (  2.13  1.015  0.85  )
+ 
+        \begintext
+
+ 
+Kleopatra
+
+
+     Old values:
+
+        Values are from the 2003 report.
+
+ 
+        body2000216_radii     = (   108.5      47    40.5  )
+ 
+
+     Current values:
+ 
+ 
+        No values are provided in the 2006 report.
+
+
+Mathilde
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2000253_RADII     = (  33.   24.   23.  )
+ 
+        \begintext
+       
+Eros
+ 
+
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY2000433_RADII     = (  17.0   5.5   5.5  )
+ 
+        \begintext
+
+
+Itokawa
+
+
+     Current values:
+
+
+        \begindata
+ 
+        BODY2025143_RADII     = (  0.535   0.294   0.209  )
+ 
+        \begintext
+
+
+
+Gaspra
+
+     
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY9511010_RADII     = (    9.1    5.2    4.4 )
+ 
+        \begintext
+
+        
+        
+        
+Ida
+
+     
+     Current values:
+ 
+ 
+        \begindata
+ 
+        BODY2431010_RADII     = (   26.8   12.0    7.6 )
+ 
+        \begintext
+
+        
+
+===========================================================================
+End of file pck00009.tpc
+===========================================================================
+
+
+
diff --git a/tests/pytests/data/f735a00/vikingAddendum003.ti b/tests/pytests/data/f735a00/vikingAddendum003.ti
new file mode 100644
index 0000000..98d77da
--- /dev/null
+++ b/tests/pytests/data/f735a00/vikingAddendum003.ti
@@ -0,0 +1,23 @@
+\begindata
+INS-27001_TRANSX = ( 0.0, 0.0117647058823529, 0.0)
+INS-27001_TRANSY = ( 0.0, 0.0, 0.0117647058823529)
+INS-27001_ITRANSS = ( 0.0, 85.0, 0.0)
+INS-27001_ITRANSL = ( 0.0, 0.0, 85.0)
+
+INS-27002_TRANSX = ( 0.0, 0.0117647058823529, 0.0)
+INS-27002_TRANSY = ( 0.0, 0.0, 0.0117647058823529)
+INS-27002_ITRANSS = ( 0.0, 85.0, 0.0)
+INS-27002_ITRANSL = ( 0.0, 0.0, 85.0)
+
+\begintext
+These are the parameters for writing c-kernels.  Isis will create ck
+with the same frame endpoints as the mission ck. For Viking1 the ck
+instrument frame is VO1_PLATFORM (-27000) and the ck reference frame
+is B1950 (2) or J2000 (1), depending on the ck used.  The mdim2.0_rand
+ck is in J2000.
+
+\begindata
+INS-27001_CK_FRAME_ID=-27000
+INS-27001_CK_REFERENCE_ID=2
+INS-27002_CK_FRAME_ID=-27000
+INS-27002_CK_REFERENCE_ID=2
diff --git a/tests/pytests/data/f735a00/vo1_fict.tsc b/tests/pytests/data/f735a00/vo1_fict.tsc
new file mode 100644
index 0000000..ca6eab8
--- /dev/null
+++ b/tests/pytests/data/f735a00/vo1_fict.tsc
@@ -0,0 +1,136 @@
+KPL/SCLK
+
+\beginlabel
+PDS_VERSION_ID               = PDS3
+RECORD_TYPE                  = STREAM
+RECORD_BYTES                 = "N/A"
+^SPICE_KERNEL                = "VO1_FICT.TSC"
+MISSION_NAME                 = VIKING
+SPACECRAFT_NAME              = "VIKING ORBITER 1"
+DATA_SET_ID                  = "VO1/VO2-M-SPICE-6-V1.0"
+KERNEL_TYPE_ID               = SCLK
+PRODUCT_ID                   = "VO1_FICT.TSC"
+PRODUCT_CREATION_TIME        = 2000-04-21T10:53:20
+PRODUCER_ID                  = "NAIF/JPL"
+MISSION_PHASE_NAME           = {
+                               PRIMARY_MISSION,
+                               EXTENDED_MISSION,
+                               CONTINUATION_MISSION,
+                               SURVEY_MISSION
+                               }
+PRODUCT_VERSION_TYPE         = ACTUAL
+PLATFORM_OR_MOUNTING_NAME    = "N/A"
+START_TIME                   = "N/A"
+STOP_TIME                    = "N/A"
+SPACECRAFT_CLOCK_START_COUNT = "N/A"
+SPACECRAFT_CLOCK_STOP_COUNT  = "N/A"
+TARGET_NAME                  = MARS
+INSTRUMENT_NAME              = "N/A"
+NAIF_INSTRUMENT_ID           = "N/A"
+SOURCE_PRODUCT_ID            = "N/A"
+NOTE                         = "See comments in the file for details"
+OBJECT                       = SPICE_KERNEL
+  INTERCHANGE_FORMAT         = ASCII
+  KERNEL_TYPE                = CLOCK_COEFFICIENTS
+  DESCRIPTION                = "SCLK file implementing fictitious clock
+used to tag orientation data in the VO1 CK files. This SCLK file does NOT
+represent real Viking Orbiter 1 on-board clock but rather is a simple
+counter of milliseconds since 1 Jan 1976 00:00:00. "
+END_OBJECT                   = SPICE_KERNEL
+\endlabel
+
+
+Viking Orbiter 1 "fictitious" SCLK Kernel
+--------------------------------------------------------
+ 
+   This file contains the data necessary to convert between the
+   'fictitious' Viking Orbiter 1 on-board clock times used as tags
+   for pointing instances in Viking Orbiter 1 CK files and ephemeris
+   time.
+
+   NAIF suggests that you do not modify this file. If you do modify
+   it, be sure to indicate this in the `Version' section below.
+
+ 
+Version
+--------------------------------------------------------
+ 
+   Version 1.0.1 -- April 20, 2000
+   
+      Comments in the file were slightly reformatted and augmented.
+ 
+   Version 1.0.0 -- July 22, 1996
+ 
+ 
+Implementation notes
+--------------------------------------------------------
+ 
+   This SPICE SCLK file is constructed so that valid SCLK strings
+   are simply the number of seconds that have passed since the UTC
+   epoch 1 Jan 1976 00:00:00. Thus 288929292.827 simply represents
+   the epoch that occurs 288929292.827 seconds past the UTC epoch
+   1 Jan 1976.
+
+   For all time, the clock runs at the same rate as Terrestrial
+   Dynamical Time (TDT). There is only one partition for this clock.
+
+   You must load this file into the kernel pool before using any
+   of the SPICELIB SCLK routines. The code fragment
+ 
+      CALL LDPOOL ( < name of this file > )
+ 
+   performs this task. To convert between ET and UTC, you will
+   also need to load a leapseconds kernel. The additional call
+   to LDPOOL,
+ 
+      CALL LDPOOL ( < name of your leapsecond file > )
+ 
+   will accomplish this. Note that you must supply the actual names
+   of the files used on your system as arguments to LDPOOL. Because
+   the file names are system dependent, we do not list them here.
+
+   For more information, consult your SPICELIB required reading
+   files. The following areas are covered:
+
+      SCLK system                     SCLK required reading
+      Time systems and conversion     TIME required reading
+      Kernel pool                     KERNEL required reading
+ 
+ 
+Kernel data
+--------------------------------------------------------
+ 
+   \begindata
+   
+      SCLK_KERNEL_ID                = (  @22-JUL-1996     )
+         
+      SCLK_DATA_TYPE_27             = (                 1 )
+         
+      SCLK01_TIME_SYSTEM_27         = (                 2 )
+      SCLK01_N_FIELDS_27            = (                 2 )
+      SCLK01_MODULI_27              = ( 10000000000  1000 )
+      SCLK01_OFFSETS_27             = (           0     0 )
+      SCLK01_OUTPUT_DELIM_27        = (                 1 )
+         
+      SCLK_PARTITION_START_27       = ( 0.0000000000000E+00 )
+      SCLK_PARTITION_END_27         = ( 1.00000000E+14      )
+      SCLK01_COEFFICIENTS_27        = ( 0.00000000E+00     
+                                        @01-JAN-1976-00:00:47.184 
+                                        1  )
+      
+   \begintext
+
+
+Contact Information
+--------------------------------------------------------
+
+   Contact NAIF node of the Planetary Data System if you have any
+   questions regarding this SCLK file.
+
+      Charles H. Acton, Jr
+      (818)-354-3869 
+      chuck.acton@jpl.nasa.gov
+      
+      Boris V. Semenov
+      (818)-354-8136 
+      boris.semenov@jpl.nasa.gov
diff --git a/tests/pytests/data/f735a00/vo1_fsc.tsc b/tests/pytests/data/f735a00/vo1_fsc.tsc
new file mode 100644
index 0000000..aa5d9a7
--- /dev/null
+++ b/tests/pytests/data/f735a00/vo1_fsc.tsc
@@ -0,0 +1,237 @@
+KPL/SCLK
+
+\beginlabel
+PDS_VERSION_ID               = PDS3
+RECORD_TYPE                  = STREAM
+RECORD_BYTES                 = "N/A"
+^SPICE_KERNEL                = "VO1_FSC.TSC"
+MISSION_NAME                 = VIKING
+SPACECRAFT_NAME              = "VIKING ORBITER 1"
+DATA_SET_ID                  = "VO1/VO2-M-SPICE-6-V1.0"
+KERNEL_TYPE_ID               = SCLK
+PRODUCT_ID                   = "VO1_FSC.TSC"
+PRODUCT_CREATION_TIME        = 2000-04-21T10:53:21
+PRODUCER_ID                  = "NAIF/JPL"
+MISSION_PHASE_NAME           = {
+                               PRIMARY_MISSION,
+                               EXTENDED_MISSION,
+                               CONTINUATION_MISSION,
+                               SURVEY_MISSION
+                               }
+PRODUCT_VERSION_TYPE         = ACTUAL
+PLATFORM_OR_MOUNTING_NAME    = "N/A"
+START_TIME                   = "N/A"
+STOP_TIME                    = "N/A"
+SPACECRAFT_CLOCK_START_COUNT = "N/A"
+SPACECRAFT_CLOCK_STOP_COUNT  = "N/A"
+TARGET_NAME                  = MARS
+INSTRUMENT_NAME              = "N/A"
+NAIF_INSTRUMENT_ID           = "N/A"
+SOURCE_PRODUCT_ID            = "N/A"
+NOTE                         = "See comments in the file for details"
+OBJECT                       = SPICE_KERNEL
+  INTERCHANGE_FORMAT         = ASCII
+  KERNEL_TYPE                = CLOCK_COEFFICIENTS
+  DESCRIPTION                = "SCLK file containing linear piecewise
+function representing VO1 FSC on-board clock. This function was generated as
+the result of VO1 image time tags restoration. "
+END_OBJECT                   = SPICE_KERNEL
+\endlabel
+
+
+Viking Orbiter 1 Reconstructed Frame Start Count (FSC) SCLK file
+--------------------------------------------------------
+
+   This file contain data necessary to convert a Viking Orbiter 1
+   FSC count to the ET time corresponding to it. These data are
+   based on the results of VO1 image times reconstruction done at
+   NAIF/JPL. The process of this reconstruction is described in
+   detail in the "VO Image Time Reconstruction" document.
+
+   Note that the main purpose of this file is to store the
+   reconstructed FSC counter; the on-board clock defined by the
+   function in this file was not used to time tag any of the
+   orientation data in CK files.
+
+   To avoid confusion with the other VO1 clock used for time tagging,
+   the FSC on-board clock in this file was assigned the NAIF ID
+   code -27999.
+   
+
+Version
+--------------------------------------------------------
+ 
+   Version 1.0.1 -- April 20, 2000
+   
+      Comments in the file were slightly reformatted and augmented.
+ 
+   Version 1.0.0 -- July 22, 1996
+        
+
+Implementation notes
+--------------------------------------------------------
+ 
+   This SPICE SCLK file is constructed so that valid SCLK strings
+   are the eight digit VO1 FSC count associated with each VO1 image.
+   Note that the actual "image time" (the time of the beginning,
+   middle or the end of exposure) has a significant offset from
+   the FSC tick start time. This offset depends on the exposure
+   duration and is described in the "VO Image Time Reconstruction"
+   document.
+
+   You must load this file into the kernel pool before using any
+   of the SPICELIB SCLK routines. The code fragment
+
+      CALL LDPOOL ( < name of this file > )
+ 
+   performs this task. To convert between ET and UTC, you will also
+   need to load a leapseconds kernel. The additional call to LDPOOL,
+
+      CALL LDPOOL ( < name of your leapsecond file > )
+ 
+   will accomplish this. Note that you must supply the actual names
+   of the files used on your system as arguments to LDPOOL. Because
+   the file names are system dependent, we do not list them here.
+
+   For more information, consult your SPICELIB required reading
+   files. The following areas are covered:
+
+      SCLK system                     SCLK required reading
+      Time systems and conversion     TIME required reading
+      Kernel pool                     KERNEL required reading
+
+
+Kernel data
+--------------------------------------------------------
+
+\begindata
+
+ SCLK_KERNEL_ID           = ( @22-JUL-1996 )
+
+ SCLK_DATA_TYPE_27999        = ( 1 )
+ SCLK01_TIME_SYSTEM_27999    = ( 2 )
+ SCLK01_N_FIELDS_27999       = ( 1 )
+ SCLK01_MODULI_27999         = ( 60000000 )
+ SCLK01_OFFSETS_27999        = ( 25837050 )
+ SCLK01_OUTPUT_DELIM_27999   = ( 1 )
+
+ SCLK_PARTITION_START_27999  = ( 
+                                0
+                                231791
+                                644942
+                                1569121
+                                3367553
+                                5555717
+                                6396566
+                                7572950
+                                8087730
+                                9835672
+                                10866610
+                                11503583
+                                12217716
+                                13159619
+                                13679685
+                                14664700
+                                15449939
+                                16432925
+                                17479492
+                                17896518
+                                18344818
+                                20321730
+                                23280832
+                                24166658
+                                24262845
+                                24359029
+                                24609280
+                                25992950
+                                26522392
+                                27368930
+                                27915783
+                                            )
+
+ SCLK_PARTITION_END_27999    = ( 
+                                231791
+                                644942
+                                1569121
+                                3367553
+                                5555717
+                                6396566
+                                7572950
+                                8087730
+                                9835672
+                                10866610
+                                11503583
+                                12217716
+                                13159619
+                                13679685
+                                14664700
+                                15449939
+                                16432925
+                                17479492
+                                17896518
+                                18344818
+                                20321730
+                                23280832
+                                24166658
+                                24262845
+                                24359029
+                                24609280
+                                25992950
+                                26522392
+                                27368930
+                                27915783
+                                59999999
+                                            )
+
+ SCLK01_COEFFICIENTS_27999   = ( 
+
+               0 -742936101.084011  4.480002320
+          231791 -741897676.845143  4.480001506
+          644942 -740046759.578601  4.480001685
+         1569121 -735906436.111559  4.480001416
+         3367553 -727849458.210550  4.480001972
+         5555717 -718046479.059529  4.480002284
+         6396566 -714279473.752967  4.480001816
+         7572950 -709009271.245943  4.480001816
+         8087730 -706703055.797485  4.480001869
+         9835672 -698872272.708142  4.480001557
+        10866610 -694253669.451953  4.480001151
+        11503583 -691400029.539901  4.480000884
+        12217716 -688200712.915836  4.480000934
+        13159619 -683980986.490315  4.480000934
+        13679685 -681651090.175512  4.480000934
+        14664700 -677238222.129167  4.480000778
+        15449939 -673720350.640383  4.480000830
+        16432925 -669316572.195161  4.480000882
+        17479492 -664627950.891482  4.480000922
+        17896518 -662759673.743136  4.480000929
+        18344818 -660751289.419364  4.480000581
+        20321730 -651894716.843243  4.480001297
+        23280832 -638637935.825957  4.480001191
+        24166658 -634669434.296886  4.480000989
+        24262845 -634238516.448398  4.480001715
+        24359029 -633807611.943517  4.480001275
+        24609280 -632686487.136533  4.480001142
+        25992950 -626487643.963656  4.480001192
+        26522392 -624115743.164982  4.480000986
+        27368930 -620323251.820923  4.480001408
+        27915783 -617873349.601991  4.480001089
+
+                                            )
+
+\begintext
+
+
+Contact Information
+--------------------------------------------------------
+
+   Contact NAIF node of the Planetary Data System if you have any
+   questions regarding this SCLK file.
+
+      Charles H. Acton, Jr
+      (818)-354-3869 
+      chuck.acton@jpl.nasa.gov
+      
+      Boris V. Semenov
+      (818)-354-8136 
+      boris.semenov@jpl.nasa.gov
diff --git a/tests/pytests/data/f735a00/vo1_sedr_ck2_0_sliced_-27000.xc b/tests/pytests/data/f735a00/vo1_sedr_ck2_0_sliced_-27000.xc
new file mode 100644
index 0000000..f535e7d
--- /dev/null
+++ b/tests/pytests/data/f735a00/vo1_sedr_ck2_0_sliced_-27000.xc
@@ -0,0 +1,101 @@
+DAFETF NAIF DAF ENCODED TRANSFER FILE
+'DAF/CK  '
+'2'
+'6'
+'VO1 PLATFORM ATTITUDE; CREATED BY BVS/NAIF; 2006-FEB-09     '
+BEGIN_ARRAY 1 80
+'VO1 ATT. BASED ON GEM AND SEDR FILES    '
+'122DF066CC^A'
+'122E1B6615^A'
+'-6978'
+'2'
+'2'
+'1'
+80
+'60BAE2FF9377E4^-1'
+'-7297AF3F99C068^-1'
+'9A26C09802033^0'
+'CC2B9860BF7C4^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'723F9FE60E38F^-1'
+'-8E5BA3434CB3F8^-1'
+'9ADE330545D3F8^0'
+'CB85FBA8AFD88^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'59FF5C2BD5AF64^-1'
+'-74D68FC13A594C^-1'
+'9C38243F49C918^0'
+'CA997A2B9A801^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6DA317049D4BD4^-1'
+'-958CAA3AE81058^-1'
+'9D8E8E3B7A0898^0'
+'C9704999CD23A^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'55AFAEB074CF6C^-1'
+'-7CC6C97CB2A1EC^-1'
+'9EE327F5ECD82^0'
+'C880AECAFC645^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'6A086A75B4E6A8^-1'
+'-98B71F7ED22CE^-1'
+'A0133940960F78^0'
+'C7710BA98B8078^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'51DC30B3206E44^-1'
+'-7D73B8FC526EA4^-1'
+'A174F3CE64BEB^0'
+'C671AC0CF2E9D8^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'65DC3F1AF382F^-1'
+'-9945A0B47BF2^-1'
+'A2BABA2E6EF008^0'
+'C549EA8DCCED18^0'
+'0^0'
+'0^0'
+'0^0'
+'4189374BC6A7F^-2'
+'122E0BB4E10002^A'
+'122E0BC6720001^A'
+'122E0BD7E0FFFD^A'
+'122E0BE972FFFF^A'
+'122E0BFAE0FFFF^A'
+'122E0C0C730001^A'
+'122E0C1DD90001^A'
+'122E0C2F610003^A'
+'122E0BBCB10002^A'
+'122E0BCE420001^A'
+'122E0BDFB0FFFD^A'
+'122E0BF142FFFF^A'
+'122E0C02B0FFFF^A'
+'122E0C14430001^A'
+'122E0C25A90001^A'
+'122E0C37310003^A'
+END_ARRAY 1 80
+TOTAL_ARRAYS 1
+ ~NAIF/SPC BEGIN COMMENTS~
+This CK is for testing with the image: /home/pgiroux/Desktop/f735a00.cub
+
+This CK was generated using the following command: {}
+ ~NAIF/SPC END COMMENTS~
diff --git a/tests/pytests/data/f735a00/vo1_v10.tf b/tests/pytests/data/f735a00/vo1_v10.tf
new file mode 100644
index 0000000..0ce54d5
--- /dev/null
+++ b/tests/pytests/data/f735a00/vo1_v10.tf
@@ -0,0 +1,470 @@
+KPL/FK
+
+Viking Orbiter 1 Frames Kernel
+===============================================================================
+
+   This frame kernel contains the complete set of frame definitions for
+   the Viking Orbiter 1 (VO1) spacecraft including definitions for the
+   spacecraft frame, instrument platform frame, and science instrument
+   frames.
+
+
+Version and Date
+-------------------------------------------------------------------------------
+
+   Version 1.0 -- December 1, 2005 -- Boris Semenov, NAIF
+
+      Initial Release.
+
+
+References
+-------------------------------------------------------------------------------
+
+   1. ``Frames Required Reading''
+
+   2. ``Kernel Pool Required Reading''
+
+   3. ``C-Kernel Required Reading''
+
+   4. VO1 Supplemental Experiment Data Record (SEDR) file, 1976-1980.
+
+   5. Thomas C. Duxbury/JPL, March-July, 1996
+
+
+Contact Information
+-------------------------------------------------------------------------------
+
+   Boris V. Semenov, NAIF/JPL, (818)-354-8136, Boris.Semenov@jpl.nasa.gov
+
+
+Implementation Notes
+-------------------------------------------------------------------------------
+
+   This file is used by the SPICE system as follows: programs that make
+   use of this frame kernel must `load' the kernel, normally during
+   program initialization. The SPICELIB/CSPICE/ICY routine FURNSH loads
+   a kernel file into the pool as shown below.
+
+      CALL FURNSH ( 'frame_kernel_name' )           SPICELIB/FORTRAN
+
+      furnsh_c ( "frame_kernel_name" );             CSPICE/C
+
+      cspice_furnsh, "frame_kernel_name"            ICY/IDL
+
+   This file was created and may be updated with a text editor or word
+   processor.
+
+
+VO1 Frames
+-------------------------------------------------------------------------------
+
+   The following VO1 frames are defined in this kernel file:
+
+           Name                  Relative to           Type       NAIF ID
+      ======================  ===================  ============   =======
+
+   Spacecraft frame:
+   -----------------
+      VO1_SPACECRAFT          rel.to B1950         CK             -27900
+
+   Instrument Platform frame:
+   --------------------------
+      VO1_PLATFORM            rel.to B1950         CK             -27000
+
+   Science Instrument frames:
+   --------------------------
+      VO1_VISA                rel.to PLATFORM      FIXED          -27001
+      VO1_VISA_TD             rel.to PLATFORM      FIXED          -27011
+      VO1_VISB                rel.to PLATFORM      FIXED          -27002
+      VO1_VISB_TD             rel.to PLATFORM      FIXED          -27012
+      VO1_IRTM                rel.to PLATFORM      FIXED          -27003
+      VO1_MAWD                rel.to PLATFORM      FIXED          -27004
+
+
+VO1 Frames Hierarchy
+-------------------------------------------------------------------------------
+
+   The diagram below shows VO1 frames hierarchy:
+
+
+                               "B1950" INERTIAL
+        +-----------------------------------------------------------+
+        |                   |                   |                   |
+        | <--pck            | <--ck             | <--ck             | <--pck
+        |                   |                   |                   |
+        V                   V                   |                   V
+    "IAU_MARS"      "V01_SPACECRAFT"            |              "IAU_EARTH"
+    -----------     ----------------            |              ------------
+                                                |
+                                                |
+                                                V
+                                          "VO1_PLATFORM"
+        +---------------------------------------------------------+
+        |                 |                     |     |     |     |
+        | <--fixed        | <--fixed   fixed--> |     |     |     | <--fixed
+        |                 |                     |     |     |     |
+        V                 V                     V     |     |     V
+    "VO1_IRTM"        "VO1_MAWD"          "VO1_VISA"  |     | "VO1_VISB"
+    ----------        ----------          ----------  |     | ----------
+                                                      |     |
+                                                      |     |
+                                             fixed--> |     | <--fixed
+                                                      |     |
+                                                      V     V
+                                          "VO1_VISA_TD"     "VO1_VISB_TD"
+                                          -------------     -------------
+
+
+Spacecraft Bus Frame
+-------------------------------------------------------------------------------
+
+   The spacecraft frame is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the spacecraft bus frame:
+
+      [TBD]
+
+   Since the S/C bus attitude with respect to an inertial frame is
+   provided by a C kernel (see [3] for more information), this frame is
+   defined as a CK-based frame.
+
+   \begindata
+
+      FRAME_VO1_SPACECRAFT     = -27900
+      FRAME_-27900_NAME        = 'VO1_SPACECRAFT'
+      FRAME_-27900_CLASS       = 3
+      FRAME_-27900_CLASS_ID    = -27900
+      FRAME_-27900_CENTER      = -27
+      CK_-27900_SCLK           = -27
+      CK_-27900_SPK            = -27
+
+   \begintext
+
+
+Instrument Platform Frame
+-------------------------------------------------------------------------------
+
+   The instrument platform frame is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the instrument platform frame:
+
+      [TBD]
+
+   Since the platform attitude with respect to an inertial frame is
+   provided by a C kernel (see [3] for more information), this frame is
+   defined as a CK-based frame.
+
+   \begindata
+
+      FRAME_VO1_PLATFORM       = -27000
+      FRAME_-27000_NAME        = 'VO1_PLATFORM'
+      FRAME_-27000_CLASS       = 3
+      FRAME_-27000_CLASS_ID    = -27000
+      FRAME_-27000_CENTER      = -27
+      CK_-27000_SCLK           = -27
+      CK_-27000_SPK            = -27
+
+   \begintext
+
+
+VISA and VISB Frames
+-------------------------------------------------------------------------------
+
+   The frames for the Visual Imaging Subsystem Camera A (VISA) and
+   Camera B (VISB) -- VO1_VISA and VO1_VISB -- are defined as follows:
+
+      -  Z axis is along the camera boresight;
+
+      -  X axis is along detector lines and points toward the right
+         side of the image;
+
+      -  Y axis completes the right hand frame;
+
+      -  the origin of this frame is located at the camera focal point.
+
+   This diagram illustrates the camera frames:
+
+      [TBD]
+
+   Since the cameras were rigidly mounted on the instrument platform
+   their frames are defined as fixed offset frames with respect to the
+   platform frame.
+
+   The camera orientation with respect to the platform was specified in
+   [4] as the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the following angle values for each of the two cameras:
+
+      VISA:
+
+         CROSS_CONE         =  -0.707350, deg
+         CONE               =  -0.007580, deg
+         RASTER_ORIENTATION =  89.735690, deg
+
+      VISB:
+
+         CROSS_CONE         =   0.681000, deg
+         CONE               =  -0.032000, deg
+         RASTER_ORIENTATION =  90.022800, deg
+
+   These angles are used in the frame definition below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the camera to the platform frame -- see [1].)
+
+   \begindata
+
+      FRAME_VO1_VISA           = -27001
+      FRAME_-27001_NAME        = 'VO1_VISA'
+      FRAME_-27001_CLASS       = 4
+      FRAME_-27001_CLASS_ID    = -27001
+      FRAME_-27001_CENTER      = -27
+      TKFRAME_-27001_SPEC      = 'ANGLES'
+      TKFRAME_-27001_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27001_ANGLES    = ( -0.707350, 0.007580, -89.735690 )
+      TKFRAME_-27001_AXES      = (  1,        2,          3        )
+      TKFRAME_-27001_UNITS     = 'DEGREES'
+
+      FRAME_VO1_VISB           = -27002
+      FRAME_-27002_NAME        = 'VO1_VISB'
+      FRAME_-27002_CLASS       = 4
+      FRAME_-27002_CLASS_ID    = -27002
+      FRAME_-27002_CENTER      = -27
+      TKFRAME_-27002_SPEC      = 'ANGLES'
+      TKFRAME_-27002_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27002_ANGLES    = (  0.681000, 0.032000, -90.022800 )
+      TKFRAME_-27002_AXES      = (  1,        2,          3        )
+      TKFRAME_-27002_UNITS     = 'DEGREES'
+
+   \begintext
+
+   Thomas Duxbury provided a different set of angle values for the cameras
+   (see [5]):
+
+      VISA:
+
+         CROSS_CONE         =  -0.707400, deg
+         CONE               =  -0.007600, deg
+         RASTER_ORIENTATION =  89.735400, deg
+
+      VISB:
+
+         CROSS_CONE         =   0.681300, deg
+         CONE               =  -0.032100, deg
+         RASTER_ORIENTATION =  90.083900, deg
+
+   To make this alignment solution available, two more frames parallel
+   to the camera frames and including the ``_TB'' suffix in the name
+   and defined below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the camera to the platform frame -- see [1].)
+
+   \begindata
+
+      FRAME_VO1_VISA_TD        = -27011
+      FRAME_-27011_NAME        = 'VO1_VISA_TD'
+      FRAME_-27011_CLASS       = 4
+      FRAME_-27011_CLASS_ID    = -27011
+      FRAME_-27011_CENTER      = -27
+      TKFRAME_-27011_SPEC      = 'ANGLES'
+      TKFRAME_-27011_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27011_ANGLES    = ( -0.707400, 0.007600, -89.735400 )
+      TKFRAME_-27011_AXES      = (  1,        2,          3        )
+      TKFRAME_-27011_UNITS     = 'DEGREES'
+
+      FRAME_VO1_VISB_TD        = -27012
+      FRAME_-27012_NAME        = 'VO1_VISB_TD'
+      FRAME_-27012_CLASS       = 4
+      FRAME_-27012_CLASS_ID    = -27012
+      FRAME_-27012_CENTER      = -27
+      TKFRAME_-27012_SPEC      = 'ANGLES'
+      TKFRAME_-27012_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27012_ANGLES    = (  0.681300, 0.032100, -90.083900 )
+      TKFRAME_-27012_AXES      = (  1,        2,          3        )
+      TKFRAME_-27012_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+IRTM Frame
+-------------------------------------------------------------------------------
+
+   The frame for the Infrared Thermal Mapper -- VO1_IRTM -- is defined
+   as follows:
+
+      [TBD]
+
+   This diagram illustrates the IRTM frame:
+
+      [TBD]
+
+   Since the IRTM instrument was rigidly mounted on the instrument
+   platform its frame is defined as fixed offset frames with respect to
+   the platform frame.
+
+   The instrument orientation with respect to the platform can be
+   specified using the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the nominal angle values:
+
+      CROSS_CONE         =   0.0, deg
+      CONE               =   0.0, deg
+      RASTER_ORIENTATION =  90.0, deg
+
+   These angles are used in the frame definition below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the instrument to the platform frame -- see
+   [1].)
+
+   \begindata
+
+      FRAME_VO1_IRTM           = -27003
+      FRAME_-27003_NAME        = 'VO1_IRTM'
+      FRAME_-27003_CLASS       = 4
+      FRAME_-27003_CLASS_ID    = -27003
+      FRAME_-27003_CENTER      = -27
+      TKFRAME_-27003_SPEC      = 'ANGLES'
+      TKFRAME_-27003_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27003_ANGLES    = (  0.0, 0.0, -90.0 )
+      TKFRAME_-27003_AXES      = (  1,   2,     3   )
+      TKFRAME_-27003_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+MAWD Frame
+-------------------------------------------------------------------------------
+
+   The frame for the Mars Atmosphere Water Detector (MAWD) -- VO1_MAWD
+   -- is defined as follows:
+
+      [TBD]
+
+   This diagram illustrates the MAWD frame:
+
+      [TBD]
+
+   Since the MAWD instrument was rigidly mounted on the instrument
+   platform its frame is defined as fixed offset frames with respect to
+   the platform frame.
+
+   The instrument orientation with respect to the platform can be
+   specified using the following three rotation angles:
+
+      T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE)
+                  Z                      Y        X
+
+   with the nominal angle values:
+
+      CROSS_CONE         =   0.0, deg
+      CONE               =   0.0, deg
+      RASTER_ORIENTATION =  90.0, deg
+
+   These angles are used in the frame definition below.
+
+   (The frame definition below contains the opposite of the rotation
+   described above because Euler angles specified in it define
+   transformation from the instrument to the platform frame -- see
+   [1].)
+
+   \begindata
+
+      FRAME_VO1_MAWD           = -27004
+      FRAME_-27004_NAME        = 'VO1_MAWD'
+      FRAME_-27004_CLASS       = 4
+      FRAME_-27004_CLASS_ID    = -27004
+      FRAME_-27004_CENTER      = -27
+      TKFRAME_-27004_SPEC      = 'ANGLES'
+      TKFRAME_-27004_RELATIVE  = 'VO1_PLATFORM'
+      TKFRAME_-27004_ANGLES    = (  0.0, 0.0, -90.0 )
+      TKFRAME_-27004_AXES      = (  1,   2,     3   )
+      TKFRAME_-27004_UNITS     = 'DEGREES'
+
+   \begintext
+
+
+Viking Orbiter 1 NAIF ID Codes -- Definition Section
+========================================================================
+
+   This section contains name to NAIF ID mappings for the VO1. Once the
+   contents of this file is loaded into the KERNEL POOL, these mappings
+   become available within SPICE, making it possible to use names
+   instead of ID code in the high level SPICE routine calls.
+
+   Spacecraft and its structures:
+   ------------------------------
+
+      VIKING ORBITER 1           -27
+      VO1                        -27
+
+      VO1_SPACECRAFT_BUS         -27900
+      VO1_SC_BUS                 -27900
+      VO1_SPACECRAFT             -27900
+
+      VO1_INSTRUMENT_PLATFORM    -27000
+      VO1_PLATFORM               -27000
+
+   Science Instruments:
+   --------------------
+
+      VO1_VISA                   -27001
+      VO1_VISB                   -27002
+
+      VO1_IRTM                   -27003
+
+      VO1_MAWD                   -27004
+
+   The mappings summarized in this table are implemented by the keywords
+   below.
+
+   \begindata
+
+      NAIF_BODY_NAME += ( 'VIKING ORBITER 1'          )
+      NAIF_BODY_CODE += ( -27                         )
+
+      NAIF_BODY_NAME += ( 'VO1'                       )
+      NAIF_BODY_CODE += ( -27                         )
+
+      NAIF_BODY_NAME += ( 'VO1_SPACECRAFT_BUS'        )
+      NAIF_BODY_CODE += ( -27900                      )
+
+      NAIF_BODY_NAME += ( 'VO1_SC_BUS'                )
+      NAIF_BODY_CODE += ( -27900                      )
+
+      NAIF_BODY_NAME += ( 'VO1_SPACECRAFT'            )
+      NAIF_BODY_CODE += ( -27900                      )
+
+      NAIF_BODY_NAME += ( 'VO1_INSTRUMENT_PLATFORM'   )
+      NAIF_BODY_CODE += ( -27000                      )
+
+      NAIF_BODY_NAME += ( 'VO1_PLATFORM'              )
+      NAIF_BODY_CODE += ( -27000                      )
+
+      NAIF_BODY_NAME += ( 'VO1_VISA'                  )
+      NAIF_BODY_CODE += ( -27001                      )
+
+      NAIF_BODY_NAME += ( 'VO1_VISB'                  )
+      NAIF_BODY_CODE += ( -27002                      )
+
+      NAIF_BODY_NAME += ( 'VO1_IRTM'                  )
+      NAIF_BODY_CODE += ( -27003                      )
+
+      NAIF_BODY_NAME += ( 'VO1_MAWD'                  )
+      NAIF_BODY_CODE += ( -27004                      )
+
+   \begintext
diff --git a/tests/pytests/test_viking_drivers.py b/tests/pytests/test_viking_drivers.py
new file mode 100644
index 0000000..08876e7
--- /dev/null
+++ b/tests/pytests/test_viking_drivers.py
@@ -0,0 +1,302 @@
+import pytest
+import os
+import numpy as np
+import spiceypy as spice
+from importlib import reload
+import json
+
+import unittest
+from unittest.mock import patch
+from conftest import get_image_label, get_image_kernels, convert_kernels, compare_dicts
+
+import ale
+from ale.drivers.viking_drivers import VikingIsisLabelNaifSpiceDriver
+
+image_dict = {
+    # Viking Orbiter 1 VISCA
+    'f004a47': {
+    'isis': {
+        'CameraVersion': 1,
+        'NaifKeywords': {
+            'BODY_CODE': 499,
+            'BODY499_RADII': [3396.19, 3396.19, 3376.2],
+            'BODY_FRAME_CODE': 10014,
+            'INS-27001_TRANSX': [0.0, 0.011764705882353, 0.0],
+            'INS-27001_TRANSY': [0.0, 0.0, 0.011764705882353],
+            'INS-27001_ITRANSS': [0.0, 85.0, 0.0],
+            'INS-27001_ITRANSL': [0.0, 0.0, 85.0],
+            'FRAME_-27001_CLASS_ID': -27001.0,
+            'INS-27001_CK_REFERENCE_ID': 2.0,
+            'TKFRAME_-27001_ANGLES': [-7.073500e-01,  7.580000e-03, -8.973569e+01],
+            'FRAME_-27001_CENTER': -27.0,
+            'TKFRAME_-27001_UNITS': 'DEGREES',
+            'TKFRAME_-27001_RELATIVE': 'VO1_PLATFORM',
+            'INS-27001_CK_FRAME_ID': -27000.0,
+            'FRAME_-27001_NAME': 'VO1_VISA',
+            'TKFRAME_-27001_AXES': [1., 2., 3.],
+            'TKFRAME_-27001_SPEC': 'ANGLES',
+            'FRAME_-27001_CLASS': 4.0,
+            'BODY499_POLE_DEC': [52.8865, -0.0609, 0.0],
+            'BODY499_POLE_RA': [317.68143, -0.1061, 0.0],
+            'BODY499_PM': [176.63, 350.89198226, 0.0]},
+        'InstrumentPointing': {
+            'TimeDependentFrames': [-27000, 2, 1],
+            'ConstantFrames': [-27001, -27000],
+            'ConstantRotation': [0.0046130633441499, 0.99991314725849,
+                                 0.012345751747229, -0.99998935101548,
+                                 0.0046143450547129, -7.53349414399155e-05,
+                                 -1.32295956915258e-04, -0.012345272752653,
+                                 0.99992378546489],
+            'CkTableStartTime': -742324621.5707,
+            'CkTableEndTime': -742324621.5707,
+            'CkTableOriginalSize': 1,
+            'EphemerisTimes': [-742324621.5707],
+            'Quaternions': [[0.52681010146894,-0.23107660776762,0.74879344146168,-0.32921588715745]],
+            'AngularVelocity': [[0.0,0.0,0.0]]},
+        'BodyRotation': {
+            'TimeDependentFrames': [10014, 1],
+            'CkTableStartTime': -742324621.5707,
+            'CkTableEndTime': -742324621.5707,
+            'CkTableOriginalSize': 1,
+            'EphemerisTimes': [-742324621.5707],
+            'Quaternions': [[-0.61809902466787,0.31800072486684,-0.0089011036547319,0.71885318740513]],
+            'AngularVelocity': [[3.16267887431502e-05,-2.87717183114938e-05,5.65351035056844e-05]]},
+        'InstrumentPosition': {
+            'SpkTableStartTime': -742324621.5707,
+            'SpkTableEndTime': -742324621.5707,
+            'SpkTableOriginalSize': 1.0,
+            'EphemerisTimes': [-742324621.5707],
+            'Positions': [[2968.0235853136,3479.4553212221,1904.2575671941]],
+            'Velocities': [[-1.9793481062728,-0.62668469080666,3.3004150826369]]},
+        'SunPosition': {
+            'SpkTableStartTime': -742324621.5707,
+            'SpkTableEndTime': -742324621.5707,
+            'SpkTableOriginalSize': 1.0,
+            'EphemerisTimes': [-742324621.5707],
+            'Positions': [[244748920.95492,-35758272.270036,-23031611.614447]],
+            'Velocities': [[3.182248924045,19.865617818691,9.025318966287]]}}},
+
+    # Viking Orbiter 1 VISCB
+    'f735a00': {
+    'isis': {
+        'CameraVersion': 1,
+        'NaifKeywords': {'BODY_CODE': 499,
+                         'BODY499_RADII': [3396.19, 3396.19, 3376.2],
+                         'BODY_FRAME_CODE': 10014,
+                         'INS-27002_TRANSX' : [0.0, 0.011764705882353, 0.0],
+                         'INS-27002_TRANSY' : [0.0, 0.0, 0.011764705882353],
+                         'INS-27002_ITRANSS' : [0.0, 85.0, 0.0],
+                         'INS-27002_ITRANSL' : [0.0, 0.0, 85.0],
+                         'INS-27002_CK_REFERENCE_ID': 2.0,
+                         'TKFRAME_-27002_ANGLES': [ 6.81000e-01,  3.20000e-02, -9.00228e+01],
+                         'FRAME_-27002_CENTER': -27.0,
+                         'FRAME_-27002_NAME': 'VO1_VISB',
+                         'TKFRAME_-27002_RELATIVE': 'VO1_PLATFORM',
+                         'INS-27002_CK_FRAME_ID': -27000.0,
+                         'TKFRAME_-27002_AXES': [1., 2., 3.],
+                         'TKFRAME_-27002_SPEC': 'ANGLES',
+                         'FRAME_-27002_CLASS_ID': -27002.0,
+                         'FRAME_-27002_CLASS': 4.0,
+                         'TKFRAME_-27002_UNITS': 'DEGREES',
+                         'BODY499_POLE_DEC': [52.8865, -0.0609,  0.    ],
+                         'BODY499_POLE_RA': [ 3.1768143e+02, -1.0610000e-01,  0.0000000e+00],
+                         'BODY499_PM': [176.63      , 350.89198226,   0.        ]
+                         },
+        'InstrumentPointing': {'TimeDependentFrames': [-27000, 2, 1],
+                               'CkTableStartTime': -679343589.99066,
+                               'CkTableEndTime': -679343589.99066,
+                               'CkTableOriginalSize': 1,
+                               'ConstantFrames': [-27002, -27000],
+                               'ConstantRotation': [-3.97934996888762e-04, 0.99992928417985, -0.011885633652183, -0.99999976485974,
+                                                    -4.04545016850005e-04, -5.53736215647129e-04,-5.58505331602587e-04, 0.011885410506373,
+                                                    0.99992921003884],
+                               'EphemerisTimes': [-679343589.99066],
+                               'Quaternions': [[0.027631069885584,-0.042844653015238,0.63550118209549,0.77041489292473]],
+                               'AngularVelocity': [[0.0,0.0,0.0]]},
+        'BodyRotation': {'TimeDependentFrames': [10014, 1],
+                         'CkTableStartTime': -679343589.99066,
+                         'CkTableEndTime': -679343589.99066,
+                         'CkTableOriginalSize': 1,
+                         'EphemerisTimes': [-679343589.99066],
+                         'Quaternions': [[-0.7279379541667,0.013628253415821,0.31784329352737,-0.60736829547822]],
+                         'AngularVelocity': [[3.16266124745133e-05,-2.87736941823106e-05,5.6534196515818e-05]]},
+        'InstrumentPosition': {'SpkTableStartTime': -679343589.99066,
+                               'SpkTableEndTime': -679343589.99066,
+                               'SpkTableOriginalSize': 1,
+                               'EphemerisTimes': [-679343589.99066],
+                               'Positions': [[3804.7657059701,-29029.379045591,-8152.7028148086]],
+                               'Velocities': [[0.61887065223952,-0.54866918471373,-0.037514399215278]]},
+        'SunPosition': {'SpkTableStartTime': -679343589.99066,
+                       'SpkTableEndTime': -679343589.99066,
+                       'SpkTableOriginalSize': 1,
+                       'EphemerisTimes': [-679343589.99066],
+                       'Positions': [[242154815.26715,36901072.557543,10366793.725074]],
+                       'Velocities': [[-4.6653907628395,19.836822435663,9.2246820568878]]}}},
+
+    # Viking Orbiter 2 VISCA
+    'f004b65': {
+    'isis': {
+    'CameraVersion': 1,
+    'NaifKeywords': {'BODY_CODE': 499,
+                     'BODY499_RADII': [3396.19, 3396.19, 3376.2],
+                     'BODY_FRAME_CODE': 10014,
+                     'INS-30001_TRANSX': [0.0, 0.011764705882353, 0.0],
+                     'INS-30001_TRANSY': [0.0, 0.0, 0.011764705882353],
+                     'INS-30001_ITRANSS': [0.0, 85.0, 0.0],
+                     'INS-30001_ITRANSL': [0.0, 0.0, 85.0],
+                     'TKFRAME_-30001_UNITS': 'DEGREES',
+                     'TKFRAME_-30001_ANGLES': [-6.7933000e-01,  2.3270000e-02, -8.9880691e+01],
+                     'FRAME_-30001_CENTER': -30.0,
+                     'FRAME_-30001_NAME': 'VO2_VISA',
+                     'TKFRAME_-30001_AXES': [1., 2., 3.],
+                     'TKFRAME_-30001_SPEC': 'ANGLES',
+                     'FRAME_-30001_CLASS_ID': -30001.0,
+                     'TKFRAME_-30001_RELATIVE': 'VO2_PLATFORM',
+                     'INS-30001_CK_FRAME_ID': -30000.0,
+                     'FRAME_-30001_CLASS': 4.0,
+                     'INS-30001_CK_REFERENCE_ID': 2.0,
+                     'BODY499_POLE_DEC': [52.8865, -0.0609, 0.0],
+                     'BODY499_POLE_RA': [317.68143, -0.1061, 0.0],
+                     'BODY499_PM': [176.63, 350.89198226, 0.0]},
+    'InstrumentPointing': {'TimeDependentFrames': [-30000, 2, 1],
+                           'ConstantFrames': [-30001, -30000],
+                           'ConstantRotation': [0.0020823332006485, 0.99992753405817,
+                                                0.011857087365694, -0.99999774946761,
+                                                0.0020870022808706, -3.81419977354999e-04,
+                                                -4.06138105773791e-04, -0.011856266437452,
+                                                0.999929629523],
+                           'CkTableStartTime': -738066654.57901,
+                           'CkTableEndTime': -738066654.57901,
+                           'CkTableOriginalSize': 1,
+                           'EphemerisTimes': [-738066654.57901],
+                           'Quaternions': [[0.24875871307312,-0.29788492418696,0.65237809296024,0.65098886199219]],
+                           'AngularVelocity': [[0.0,0.0,0.0]]},
+    'BodyRotation': {'TimeDependentFrames': [10014, 1],
+                     'CkTableStartTime': -738066654.57901,
+                     'CkTableEndTime': -738066654.57901,
+                     'CkTableOriginalSize': 1,
+                     'EphemerisTimes': [-738066654.57901],
+                     'Quaternions': [[-0.53502287519129,0.31507831776488,-0.043929225721799,0.7826534353237]],
+                     'AngularVelocity': [[3.16267768298231e-05,-2.87718518940354e-05,5.65350421875015e-05]]},
+    'InstrumentPosition': {'SpkTableStartTime': -738066654.57901,
+                           'SpkTableEndTime': -738066654.57901,
+                           'SpkTableOriginalSize': 1.0,
+                           'EphemerisTimes': [-738066654.57901],
+                           'Positions': [[4553.9327290117,-1511.8974073078,1092.1996085889]],
+                           'Velocities': [[-0.24727917113306,2.4028815935793,3.0999864190804]]},
+    'SunPosition': {'SpkTableStartTime': -738066654.57901,
+                    'SpkTableEndTime': -738066654.57901,
+                    'SpkTableOriginalSize': 1.0,
+                    'EphemerisTimes': [-738066654.57901],
+                    'Positions': [[238736005.86526,49393960.380247,16187072.695853]],
+                    'Velocities': [[-6.0452401714101,19.592116149966,9.1498650350044]]}}},
+
+    # Viking Orbiter 2 VISCB
+    'f704b28': {
+    'isis': {
+    'CameraVersion': 1,
+    'NaifKeywords': {'BODY_CODE': 499,
+                     'BODY499_RADII': [3396.19, 3396.19, 3376.2],
+                     'BODY_FRAME_CODE': 10014,
+                     'INS-30002_TRANSX': [0.0, 0.011764705882353, 0.0],
+                     'INS-30002_TRANSY': [0.0, 0.0, 0.011764705882353],
+                     'INS-30002_ITRANSS': [0.0, 85.0, 0.0],
+                     'INS-30002_ITRANSL': [0.0, 0.0, 85.0],
+                     'TKFRAME_-30002_AXES': [1., 2., 3.],
+                     'TKFRAME_-30002_SPEC': 'ANGLES',
+                     'TKFRAME_-30002_ANGLES':[ 6.630000e-01,  4.400000e-02, -8.966379e+01],
+                     'FRAME_-30002_CENTER': -30.0,
+                     'FRAME_-30002_CLASS': 4.0,
+                     'INS-30002_CK_FRAME_ID': -30000.0,
+                     'FRAME_-30002_CLASS_ID': -30002.0,
+                     'TKFRAME_-30002_UNITS': 'DEGREES',
+                     'TKFRAME_-30002_RELATIVE': 'VO2_PLATFORM',
+                     'INS-30002_CK_REFERENCE_ID': 2.0,
+                     'FRAME_-30002_NAME': 'VO2_VISB',
+                     'BODY499_POLE_DEC': [52.8865, -0.0609, 0.0],
+                     'BODY499_POLE_RA': [ 317.68143, -0.1061, 0.0],
+                     'BODY499_PM': [176.63, 350.89198226, 0.0]},
+    'InstrumentPointing': {'TimeDependentFrames': [-30000, 2, 1],
+                           'ConstantFrames': [-30002, -30000],
+                           'ConstantRotation': [0.0058679360725137, 0.99991588736024,
+                                                -0.011566569536285, -0.9999824886402,
+                                                0.0058586590004418, -8.35779681749578e-04,
+                                                -7.67944795396292e-04, 0.011571271291668,
+                                                0.99993275570985],
+                           'CkTableStartTime': -676709864.3045,
+                           'CkTableEndTime': -676709864.3045,
+                           'CkTableOriginalSize': 1,
+                           'EphemerisTimes': [-676709864.3045],
+                           'Quaternions': [[0.14671376032888,-0.20207775752139,0.96766874650245,0.03545207310812]],
+                           'AngularVelocity': [[0.0,0.0,0.0]]},
+    'BodyRotation': {'TimeDependentFrames': [10014, 1],
+                      'CkTableStartTime': -676709864.3045,
+                      'CkTableEndTime': -676709864.3045,
+                      'CkTableOriginalSize': 1,
+                      'EphemerisTimes': [-676709864.3045],
+                      'Quaternions': [[-0.028648237381698,0.24168074000221,-0.20688348409661,0.94761222154157]],
+                      'AngularVelocity': [[3.16266051008033e-05,-2.87737768090931e-05,5.6534158586979e-05]]},
+    'InstrumentPosition': {'SpkTableStartTime': -676709864.3045,
+                           'SpkTableEndTime': -676709864.3045,
+                           'SpkTableOriginalSize': 1.0,
+                           'EphemerisTimes': [-676709864.3045],
+                           'Positions': [[3297.8743337482,966.46050377782,10725.740343691]],
+                           'Velocities': [[-0.44211958524766,1.2883896612093,1.9012944589374]]},
+    'SunPosition': {'SpkTableStartTime': -676709864.3045,
+                    'SpkTableEndTime': -676709864.3045,
+                    'SpkTableOriginalSize': 1.0,
+                    'EphemerisTimes': [-676709864.3045],
+                    'Positions': [[222364052.49946,87428117.498071,34077452.005079]],
+                    'Velocities': [[-10.327617595005,18.315940117221,8.6804664968805]]}}}
+    }
+
+@pytest.fixture(scope="module")
+def test_kernels():
+    updated_kernels = {}
+    binary_kernels = {}
+    for image in image_dict.keys():
+        kernels = get_image_kernels(image)
+        updated_kernels[image], binary_kernels[image] = convert_kernels(kernels)
+    yield updated_kernels
+    for kern_list in binary_kernels.values():
+        for kern in kern_list:
+            os.remove(kern)
+
+@pytest.mark.parametrize("label_type", ['isis3'])
+@pytest.mark.parametrize("formatter", ['isis'])
+@pytest.mark.parametrize("image", image_dict.keys())
+def test_viking1_load(test_kernels, label_type, formatter, image):
+    label_file = get_image_label(image, label_type)
+    isis_isd = ale.load(label_file, props={'kernels': test_kernels[image]}, formatter=formatter)
+    print(isis_isd)
+    assert compare_dicts(isis_isd, image_dict[image][formatter]) == []
+
+# ========= Test isislabel and naifspice driver =========
+class test_isis_naif(unittest.TestCase):
+
+    def setUp(self):
+        label = get_image_label("f735a00", "isis3")
+        self.driver = VikingIsisLabelNaifSpiceDriver(label)
+
+    def test_short_mission_name(self):
+        assert self.driver.short_mission_name == 'viking'
+
+    def test_spacecraft_name(self):
+        assert self.driver.spacecraft_name == 'VIKING ORBITER 1'
+
+    def test_ikid(self):
+        assert self.driver.ikid == -27002
+
+    def test_alt_ikid(self):
+        assert self.driver.alt_ikid == -27999
+
+    def test_ephemeris_start_time(self):
+        with patch('ale.drivers.viking_drivers.spice.scs2e', return_value=54321) as scs2e:
+             assert self.driver.ephemeris_start_time == 54324.99
+             scs2e.assert_called_with(-27999, '40031801')
+
+    @patch('ale.base.label_isis.IsisLabel.exposure_duration', 0.43)
+    def test_ephemeris_start_time_different_exposure(self):
+        with patch('ale.drivers.viking_drivers.spice.scs2e', return_value=54321) as scs2e:
+             assert self.driver.ephemeris_start_time == 54322.75
+             scs2e.assert_called_with(-27999, '40031801')
-- 
GitLab