imap-processing 0.17.0__py3-none-any.whl → 0.19.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of imap-processing might be problematic. Click here for more details.

Files changed (141) hide show
  1. imap_processing/_version.py +2 -2
  2. imap_processing/ancillary/ancillary_dataset_combiner.py +161 -1
  3. imap_processing/ccsds/excel_to_xtce.py +12 -0
  4. imap_processing/cdf/config/imap_codice_global_cdf_attrs.yaml +6 -6
  5. imap_processing/cdf/config/imap_codice_l1a_variable_attrs.yaml +312 -274
  6. imap_processing/cdf/config/imap_codice_l1b_variable_attrs.yaml +39 -28
  7. imap_processing/cdf/config/imap_codice_l2_variable_attrs.yaml +1048 -183
  8. imap_processing/cdf/config/imap_constant_attrs.yaml +4 -2
  9. imap_processing/cdf/config/imap_glows_l1b_variable_attrs.yaml +12 -0
  10. imap_processing/cdf/config/imap_hi_global_cdf_attrs.yaml +5 -0
  11. imap_processing/cdf/config/imap_hit_global_cdf_attrs.yaml +10 -4
  12. imap_processing/cdf/config/imap_hit_l1a_variable_attrs.yaml +163 -100
  13. imap_processing/cdf/config/imap_hit_l2_variable_attrs.yaml +4 -4
  14. imap_processing/cdf/config/imap_ialirt_l1_variable_attrs.yaml +97 -54
  15. imap_processing/cdf/config/imap_idex_l2a_variable_attrs.yaml +33 -4
  16. imap_processing/cdf/config/imap_idex_l2b_variable_attrs.yaml +44 -44
  17. imap_processing/cdf/config/imap_idex_l2c_variable_attrs.yaml +77 -61
  18. imap_processing/cdf/config/imap_lo_global_cdf_attrs.yaml +30 -0
  19. imap_processing/cdf/config/imap_lo_l1a_variable_attrs.yaml +4 -15
  20. imap_processing/cdf/config/imap_lo_l1c_variable_attrs.yaml +189 -98
  21. imap_processing/cdf/config/imap_mag_global_cdf_attrs.yaml +99 -2
  22. imap_processing/cdf/config/imap_mag_l1c_variable_attrs.yaml +24 -1
  23. imap_processing/cdf/config/imap_ultra_global_cdf_attrs.yaml +60 -0
  24. imap_processing/cdf/config/imap_ultra_l1b_variable_attrs.yaml +99 -11
  25. imap_processing/cdf/config/imap_ultra_l1c_variable_attrs.yaml +50 -7
  26. imap_processing/cli.py +121 -44
  27. imap_processing/codice/codice_l1a.py +165 -77
  28. imap_processing/codice/codice_l1b.py +1 -1
  29. imap_processing/codice/codice_l2.py +118 -19
  30. imap_processing/codice/constants.py +1217 -1089
  31. imap_processing/decom.py +1 -4
  32. imap_processing/ena_maps/ena_maps.py +32 -25
  33. imap_processing/ena_maps/utils/naming.py +8 -2
  34. imap_processing/glows/ancillary/imap_glows_exclusions-by-instr-team_20250923_v002.dat +10 -0
  35. imap_processing/glows/ancillary/imap_glows_map-of-excluded-regions_20250923_v002.dat +393 -0
  36. imap_processing/glows/ancillary/imap_glows_map-of-uv-sources_20250923_v002.dat +593 -0
  37. imap_processing/glows/ancillary/imap_glows_pipeline_settings_20250923_v002.json +54 -0
  38. imap_processing/glows/ancillary/imap_glows_suspected-transients_20250923_v002.dat +10 -0
  39. imap_processing/glows/l1b/glows_l1b.py +99 -9
  40. imap_processing/glows/l1b/glows_l1b_data.py +350 -38
  41. imap_processing/glows/l2/glows_l2.py +11 -0
  42. imap_processing/hi/hi_l1a.py +124 -3
  43. imap_processing/hi/hi_l1b.py +154 -71
  44. imap_processing/hi/hi_l2.py +84 -51
  45. imap_processing/hi/utils.py +153 -8
  46. imap_processing/hit/l0/constants.py +3 -0
  47. imap_processing/hit/l0/decom_hit.py +5 -8
  48. imap_processing/hit/l1a/hit_l1a.py +375 -45
  49. imap_processing/hit/l1b/constants.py +5 -0
  50. imap_processing/hit/l1b/hit_l1b.py +61 -131
  51. imap_processing/hit/l2/constants.py +1 -1
  52. imap_processing/hit/l2/hit_l2.py +10 -11
  53. imap_processing/ialirt/calculate_ingest.py +219 -0
  54. imap_processing/ialirt/constants.py +32 -1
  55. imap_processing/ialirt/generate_coverage.py +201 -0
  56. imap_processing/ialirt/l0/ialirt_spice.py +5 -2
  57. imap_processing/ialirt/l0/parse_mag.py +337 -29
  58. imap_processing/ialirt/l0/process_hit.py +5 -3
  59. imap_processing/ialirt/l0/process_swapi.py +41 -25
  60. imap_processing/ialirt/l0/process_swe.py +23 -7
  61. imap_processing/ialirt/process_ephemeris.py +70 -14
  62. imap_processing/ialirt/utils/constants.py +22 -16
  63. imap_processing/ialirt/utils/create_xarray.py +42 -19
  64. imap_processing/idex/idex_constants.py +1 -5
  65. imap_processing/idex/idex_l0.py +2 -2
  66. imap_processing/idex/idex_l1a.py +2 -3
  67. imap_processing/idex/idex_l1b.py +2 -3
  68. imap_processing/idex/idex_l2a.py +130 -4
  69. imap_processing/idex/idex_l2b.py +313 -119
  70. imap_processing/idex/idex_utils.py +1 -3
  71. imap_processing/lo/l0/lo_apid.py +1 -0
  72. imap_processing/lo/l0/lo_science.py +25 -24
  73. imap_processing/lo/l1a/lo_l1a.py +44 -0
  74. imap_processing/lo/l1b/lo_l1b.py +3 -3
  75. imap_processing/lo/l1c/lo_l1c.py +116 -50
  76. imap_processing/lo/l2/lo_l2.py +29 -29
  77. imap_processing/lo/lo_ancillary.py +55 -0
  78. imap_processing/lo/packet_definitions/lo_xtce.xml +5359 -106
  79. imap_processing/mag/constants.py +1 -0
  80. imap_processing/mag/l1a/mag_l1a.py +1 -0
  81. imap_processing/mag/l1a/mag_l1a_data.py +26 -0
  82. imap_processing/mag/l1b/mag_l1b.py +3 -2
  83. imap_processing/mag/l1c/interpolation_methods.py +14 -15
  84. imap_processing/mag/l1c/mag_l1c.py +23 -6
  85. imap_processing/mag/l1d/__init__.py +0 -0
  86. imap_processing/mag/l1d/mag_l1d.py +176 -0
  87. imap_processing/mag/l1d/mag_l1d_data.py +725 -0
  88. imap_processing/mag/l2/__init__.py +0 -0
  89. imap_processing/mag/l2/mag_l2.py +25 -20
  90. imap_processing/mag/l2/mag_l2_data.py +199 -130
  91. imap_processing/quality_flags.py +28 -2
  92. imap_processing/spice/geometry.py +101 -36
  93. imap_processing/spice/pointing_frame.py +1 -7
  94. imap_processing/spice/repoint.py +29 -2
  95. imap_processing/spice/spin.py +32 -8
  96. imap_processing/spice/time.py +60 -19
  97. imap_processing/swapi/l1/swapi_l1.py +10 -4
  98. imap_processing/swapi/l2/swapi_l2.py +66 -24
  99. imap_processing/swapi/swapi_utils.py +1 -1
  100. imap_processing/swe/l1b/swe_l1b.py +3 -6
  101. imap_processing/ultra/constants.py +28 -3
  102. imap_processing/ultra/l0/decom_tools.py +15 -8
  103. imap_processing/ultra/l0/decom_ultra.py +35 -11
  104. imap_processing/ultra/l0/ultra_utils.py +102 -12
  105. imap_processing/ultra/l1a/ultra_l1a.py +26 -6
  106. imap_processing/ultra/l1b/cullingmask.py +6 -3
  107. imap_processing/ultra/l1b/de.py +122 -26
  108. imap_processing/ultra/l1b/extendedspin.py +29 -2
  109. imap_processing/ultra/l1b/lookup_utils.py +424 -50
  110. imap_processing/ultra/l1b/quality_flag_filters.py +23 -0
  111. imap_processing/ultra/l1b/ultra_l1b_culling.py +356 -5
  112. imap_processing/ultra/l1b/ultra_l1b_extended.py +534 -90
  113. imap_processing/ultra/l1c/helio_pset.py +127 -7
  114. imap_processing/ultra/l1c/l1c_lookup_utils.py +256 -0
  115. imap_processing/ultra/l1c/spacecraft_pset.py +90 -15
  116. imap_processing/ultra/l1c/ultra_l1c.py +6 -0
  117. imap_processing/ultra/l1c/ultra_l1c_culling.py +85 -0
  118. imap_processing/ultra/l1c/ultra_l1c_pset_bins.py +446 -341
  119. imap_processing/ultra/l2/ultra_l2.py +0 -1
  120. imap_processing/ultra/utils/ultra_l1_utils.py +40 -3
  121. imap_processing/utils.py +3 -4
  122. {imap_processing-0.17.0.dist-info → imap_processing-0.19.0.dist-info}/METADATA +3 -3
  123. {imap_processing-0.17.0.dist-info → imap_processing-0.19.0.dist-info}/RECORD +126 -126
  124. imap_processing/idex/idex_l2c.py +0 -250
  125. imap_processing/spice/kernels.py +0 -187
  126. imap_processing/ultra/lookup_tables/Angular_Profiles_FM45_LeftSlit.csv +0 -526
  127. imap_processing/ultra/lookup_tables/Angular_Profiles_FM45_RightSlit.csv +0 -526
  128. imap_processing/ultra/lookup_tables/Angular_Profiles_FM90_LeftSlit.csv +0 -526
  129. imap_processing/ultra/lookup_tables/Angular_Profiles_FM90_RightSlit.csv +0 -524
  130. imap_processing/ultra/lookup_tables/EgyNorm.mem.csv +0 -32769
  131. imap_processing/ultra/lookup_tables/FM45_Startup1_ULTRA_IMGPARAMS_20240719.csv +0 -2
  132. imap_processing/ultra/lookup_tables/FM90_Startup1_ULTRA_IMGPARAMS_20240719.csv +0 -2
  133. imap_processing/ultra/lookup_tables/dps_grid45_compressed.cdf +0 -0
  134. imap_processing/ultra/lookup_tables/ultra45_back-pos-luts.csv +0 -4097
  135. imap_processing/ultra/lookup_tables/ultra45_tdc_norm.csv +0 -2050
  136. imap_processing/ultra/lookup_tables/ultra90_back-pos-luts.csv +0 -4097
  137. imap_processing/ultra/lookup_tables/ultra90_tdc_norm.csv +0 -2050
  138. imap_processing/ultra/lookup_tables/yadjust.csv +0 -257
  139. {imap_processing-0.17.0.dist-info → imap_processing-0.19.0.dist-info}/LICENSE +0 -0
  140. {imap_processing-0.17.0.dist-info → imap_processing-0.19.0.dist-info}/WHEEL +0 -0
  141. {imap_processing-0.17.0.dist-info → imap_processing-0.19.0.dist-info}/entry_points.txt +0 -0
@@ -39,7 +39,7 @@ APIDS_FOR_SCIENCE_PROCESSING = [
39
39
  CODICEAPID_MAPPING = {
40
40
  "hskp": CODICEAPID.COD_NHK,
41
41
  "lo-ialirt": CODICEAPID.COD_LO_IAL,
42
- "lo-pha": CODICEAPID.COD_LO_PHA,
42
+ "lo-direct-events": CODICEAPID.COD_LO_PHA,
43
43
  "lo-sw-priority": CODICEAPID.COD_LO_SW_PRIORITY_COUNTS,
44
44
  "lo-sw-species": CODICEAPID.COD_LO_SW_SPECIES_COUNTS,
45
45
  "lo-nsw-species": CODICEAPID.COD_LO_NSW_SPECIES_COUNTS,
@@ -49,7 +49,7 @@ CODICEAPID_MAPPING = {
49
49
  "lo-counters-aggregated": CODICEAPID.COD_LO_INST_COUNTS_AGGREGATED,
50
50
  "lo-counters-singles": CODICEAPID.COD_LO_INST_COUNTS_SINGLES,
51
51
  "hi-ialirt": CODICEAPID.COD_HI_IAL,
52
- "hi-pha": CODICEAPID.COD_HI_PHA,
52
+ "hi-direct-events": CODICEAPID.COD_HI_PHA,
53
53
  "hi-counters-aggregated": CODICEAPID.COD_HI_INST_COUNTS_AGGREGATED,
54
54
  "hi-counters-singles": CODICEAPID.COD_HI_INST_COUNTS_SINGLES,
55
55
  "hi-omni": CODICEAPID.COD_HI_OMNI_SPECIES_COUNTS,
@@ -59,6 +59,7 @@ CODICEAPID_MAPPING = {
59
59
 
60
60
  # Numerical constants
61
61
  SPIN_PERIOD_CONVERSION = 0.00032
62
+ K_FACTOR = 5.76 # This is used to convert voltages to energies in L2
62
63
 
63
64
  # CDF variable names used for lo data products
64
65
  LO_COUNTERS_SINGLES_VARIABLE_NAMES = ["apd_singles"]
@@ -127,35 +128,35 @@ HI_SECTORED_VARIABLE_NAMES = ["h", "he3he4", "cno", "fe"]
127
128
  HI_IALIRT_VARIABLE_NAMES = ["h"]
128
129
 
129
130
  # CDF variable names used for direct event data products
130
- HI_PHA_CDF_FIELDS = [
131
- "NumEvents",
132
- "DataQuality",
133
- "SSDEnergy",
134
- "TOF",
135
- "SSD_ID",
136
- "ERGE",
137
- "MultiFlag",
138
- "Type",
139
- "SpinAngle",
140
- "SpinNumber",
131
+ HI_DE_CDF_FIELDS = [
132
+ "num_events",
133
+ "data_quality",
134
+ "ssd_energy",
135
+ "tof",
136
+ "ssd_id",
137
+ "gain",
138
+ "multi_flag",
139
+ "type",
140
+ "spin_sector",
141
+ "spin_number",
141
142
  ]
142
- HI_PHA_VARIABLE_NAMES = [
143
- f"P{n}_{field}" for n in range(6) for field in HI_PHA_CDF_FIELDS
143
+ HI_DIRECT_EVENTS_VARIABLE_NAMES = [
144
+ f"p{n}_{field}" for n in range(6) for field in HI_DE_CDF_FIELDS
144
145
  ]
145
- LO_PHA_CDF_FIELDS = [
146
- "NumEvents",
147
- "DataQuality",
148
- "APDGain",
149
- "APD_ID",
150
- "APDEnergy",
151
- "TOF",
152
- "MultiFlag",
153
- "PHAType",
154
- "SpinAngle",
155
- "EnergyStep",
146
+ LO_DE_CDF_FIELDS = [
147
+ "num_events",
148
+ "data_quality",
149
+ "gain",
150
+ "apd_id",
151
+ "apd_energy",
152
+ "tof",
153
+ "multi_flag",
154
+ "type",
155
+ "spin_sector",
156
+ "energy_step",
156
157
  ]
157
- LO_PHA_VARIABLE_NAMES = [
158
- f"P{n}_{field}" for n in range(8) for field in LO_PHA_CDF_FIELDS
158
+ LO_DIRECT_EVENTS_VARIABLE_NAMES = [
159
+ f"p{n}_{field}" for n in range(8) for field in LO_DE_CDF_FIELDS
159
160
  ]
160
161
 
161
162
  # Final I-ALiRT data product fields
@@ -174,34 +175,34 @@ CODICE_HI_IAL_DATA_FIELDS = ["h"]
174
175
  # TODO: Try to convince Joey to move to lower case variable names with
175
176
  # underscores?
176
177
  LO_COUNTERS_AGGREGATED_ACTIVE_VARIABLES = {
177
- "TCR": True,
178
- "DCR": True,
179
- "TOFPlusAPD": False,
180
- "TOFOnly": False,
181
- "PositionPlusAPD": False,
182
- "PositionOnly": False,
183
- "STAorSTBPlusAPD": False,
184
- "STAorSTBOnly": False,
185
- "Reserved1": False,
186
- "Reserved2": False,
187
- "SPOnly": False,
188
- "APDOnly": False,
189
- "LowTOFCutoff": False,
190
- "STA": True,
191
- "STB": True,
192
- "SP": True,
193
- "TotalPositionCount": True,
194
- "InvalidPositionCount": False,
195
- "ASIC1FlagInvalid": False,
196
- "ASIC2FlagInvalid": False,
197
- "ASIC1ChannelInvalid": False,
198
- "ASIC2ChannelInvalid": False,
199
- "TEC4TimeoutTOFNoPos": False,
200
- "TEC4TimeoutPosNoTOF": False,
201
- "TEC4TimeoutNoPosTOF": False,
202
- "TEC5TimeoutTOFNoPos": False,
203
- "TEC5TimeoutPosNoTOF": False,
204
- "TEC5TimeoutNoPosTOF": False,
178
+ "tcr": True,
179
+ "dcr": True,
180
+ "tof_plus_apd": False,
181
+ "tof_only": False,
182
+ "position_plus_apd": False,
183
+ "position_only": False,
184
+ "sta_or_stb_plus_apd": False,
185
+ "sta_or_stb_only": False,
186
+ "reserved1": False,
187
+ "reserved2": False,
188
+ "sp_only": False,
189
+ "apd_only": False,
190
+ "low_tof_cutoff": False,
191
+ "sta": True,
192
+ "stb": True,
193
+ "sp": True,
194
+ "total_position_count": True,
195
+ "invalid_position_count": False,
196
+ "asic1_flag_invalid": False,
197
+ "asic2_flag_invalid": False,
198
+ "asic1_channel_invalid": False,
199
+ "asic2_channel_invalid": False,
200
+ "tec4_timeout_tof_no_pos": False,
201
+ "tec4_timeout_pos_no_tof": False,
202
+ "tec4_timeout_no_pos_tof": False,
203
+ "tec5_timeout_tof_no_pos": False,
204
+ "tec5_timeout_pos_no_tof": False,
205
+ "tec5_timeout_no_pos_tof": False,
205
206
  }
206
207
  LO_COUNTERS_AGGREGATED_VARIABLE_NAMES = [
207
208
  name
@@ -209,22 +210,22 @@ LO_COUNTERS_AGGREGATED_VARIABLE_NAMES = [
209
210
  if is_active
210
211
  ]
211
212
  HI_COUNTERS_AGGREGATED_ACTIVE_VARIABLES = {
212
- "DCR": True,
213
- "STO": True,
214
- "SPO": True,
215
- "Reserved1": False,
216
- "MST": True,
217
- "Reserved2": False,
218
- "Reserved3": False,
219
- "Reserved4": False,
220
- "Reserved5": False,
221
- "LowTOFCutoff": False,
222
- "Reserved6": False,
223
- "Reserved7": False,
224
- "ASIC1FlagInvalid": True,
225
- "ASIC2FlagInvalid": True,
226
- "ASIC1ChannelInvalid": False,
227
- "ASIC2ChannelInvalid": False,
213
+ "dcr": True,
214
+ "sto": True,
215
+ "spo": True,
216
+ "reserved1": False,
217
+ "mst": True,
218
+ "reserved2": False,
219
+ "reserved3": False,
220
+ "reserved4": False,
221
+ "reserved5": False,
222
+ "low_tof_cutoff": False,
223
+ "reserved6": False,
224
+ "reserved7": False,
225
+ "asic1_flag_invalid": True,
226
+ "asic2_flag_invalid": True,
227
+ "asic1_channel_invalid": False,
228
+ "asic_2_channel_invalid": False,
228
229
  }
229
230
  HI_COUNTERS_AGGREGATED_VARIABLE_NAMES = [
230
231
  name
@@ -232,6 +233,14 @@ HI_COUNTERS_AGGREGATED_VARIABLE_NAMES = [
232
233
  if is_active
233
234
  ]
234
235
 
236
+ # List of data products that require application of despinning algorithm
237
+ REQUIRES_DESPINNING = [
238
+ "imap_codice_l1a_lo-sw-angular",
239
+ "imap_codice_l1a_lo-nsw-angular",
240
+ "imap_codice_l1a_lo-sw-priority",
241
+ "imap_codice_l1a_lo-nsw-priority",
242
+ ]
243
+
235
244
  # Energy tables for CoDICE-Hi data products. These values represent the edges
236
245
  # of the bins, and are used in the CoDICE L1a pipeline to compute the centers
237
246
  # and deltas of the bins, which then get stored in the CDF files for future use.
@@ -405,8 +414,6 @@ SECTORED_ENERGY_TABLE = {
405
414
  "fe": [0.0125, 0.025, 0.05, 0.1, 0.2, 0.4, 0.8, 1.6, 3.2],
406
415
  }
407
416
 
408
- # TODO: Possibly move to consistent order of dimensions with other instruments
409
- # TBD after discussion with Joey and at the Science Team Meeting in Feb
410
417
  # Various configurations to support processing of individual data products
411
418
  # Much of these are described in the algorithm document in chapter 10 ("Data
412
419
  # Level 1A")
@@ -414,11 +421,10 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
414
421
  CODICEAPID.COD_HI_IAL: {
415
422
  "dataset_name": "imap_codice_l1a_hi-ialirt",
416
423
  "energy_table": IALIRT_ENERGY_TABLE,
417
- "input_dims": {"esa_step": 15, "inst_az": 4},
424
+ "dims": {"esa_step": 15, "inst_az": 4},
418
425
  "instrument": "hi",
419
426
  "num_counters": 1,
420
427
  "num_spins": 4,
421
- "output_dims": {"esa_step": 15, "inst_az": 4},
422
428
  "support_variables": [
423
429
  "data_quality",
424
430
  "spin_period",
@@ -428,45 +434,39 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
428
434
  },
429
435
  CODICEAPID.COD_HI_INST_COUNTS_AGGREGATED: {
430
436
  "dataset_name": "imap_codice_l1a_hi-counters-aggregated",
431
- "input_dims": {},
437
+ "dims": {},
432
438
  "instrument": "hi",
433
439
  "num_counters": len(
434
440
  HI_COUNTERS_AGGREGATED_VARIABLE_NAMES
435
441
  ), # The number of counters depends on the number of active counters
436
- "output_dims": {},
437
442
  "support_variables": ["data_quality", "spin_period"],
438
443
  "variable_names": HI_COUNTERS_AGGREGATED_VARIABLE_NAMES,
439
444
  },
440
445
  CODICEAPID.COD_HI_INST_COUNTS_SINGLES: {
441
446
  "dataset_name": "imap_codice_l1a_hi-counters-singles",
442
- "input_dims": {
447
+ "dims": {
443
448
  "ssd_index": 12,
444
449
  },
445
450
  "instrument": "hi",
446
451
  "num_counters": 3,
447
- "output_dims": {
448
- "ssd_index": 12,
449
- },
450
452
  "support_variables": ["data_quality", "spin_period"],
451
453
  "variable_names": HI_COUNTERS_SINGLES_VARIABLE_NAMES,
452
454
  },
453
455
  CODICEAPID.COD_HI_INST_COUNTS_PRIORITIES: {
454
456
  "dataset_name": "imap_codice_l1a_hi-priority",
455
- "input_dims": {},
457
+ "dims": {},
456
458
  "instrument": "hi",
457
459
  "num_counters": 6,
458
- "output_dims": {},
459
460
  "support_variables": ["data_quality", "spin_period"],
460
461
  "variable_names": HI_PRIORITY_VARIABLE_NAMES,
461
462
  },
462
463
  CODICEAPID.COD_HI_OMNI_SPECIES_COUNTS: {
463
464
  "dataset_name": "imap_codice_l1a_hi-omni",
464
465
  "energy_table": OMNI_ENERGY_TABLE,
465
- "input_dims": {"esa_step": 15, "inst_az": 4},
466
+ "dims": {"esa_step": 15, "inst_az": 4},
466
467
  "instrument": "hi",
467
468
  "num_counters": 8,
468
469
  "num_spins": 4,
469
- "output_dims": {"esa_step": 15, "inst_az": 4},
470
470
  "support_variables": [
471
471
  "data_quality",
472
472
  "spin_period",
@@ -485,7 +485,7 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
485
485
  CODICEAPID.COD_HI_SECT_SPECIES_COUNTS: {
486
486
  "dataset_name": "imap_codice_l1a_hi-sectored",
487
487
  "energy_table": SECTORED_ENERGY_TABLE,
488
- "input_dims": {
488
+ "dims": {
489
489
  "esa_step": 8,
490
490
  "ssd_index": 12,
491
491
  "spin_sector_index": 12,
@@ -493,11 +493,6 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
493
493
  "instrument": "hi",
494
494
  "num_counters": 4,
495
495
  "num_spins": 16,
496
- "output_dims": {
497
- "esa_step": 8,
498
- "ssd_index": 12,
499
- "spin_sector_index": 12,
500
- },
501
496
  "support_variables": [
502
497
  "data_quality",
503
498
  "spin_period",
@@ -510,10 +505,9 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
510
505
  },
511
506
  CODICEAPID.COD_LO_IAL: {
512
507
  "dataset_name": "imap_codice_l1a_lo-ialirt",
513
- "input_dims": {"spin_sector": 1, "esa_step": 128},
508
+ "dims": {"esa_step": 128, "spin_sector": 1},
514
509
  "instrument": "lo",
515
510
  "num_counters": 9,
516
- "output_dims": {"spin_sector": 1, "esa_step": 128},
517
511
  "support_variables": [
518
512
  "energy_table",
519
513
  "acquisition_time_per_step",
@@ -523,17 +517,17 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
523
517
  "st_bias_gain_mode",
524
518
  "data_quality",
525
519
  "spin_period",
520
+ "k_factor",
526
521
  ],
527
522
  "variable_names": LO_IALIRT_VARIABLE_NAMES,
528
523
  },
529
524
  CODICEAPID.COD_LO_INST_COUNTS_AGGREGATED: {
530
525
  "dataset_name": "imap_codice_l1a_lo-counters-aggregated",
531
- "input_dims": {"esa_step": 128, "spin_sector_pairs": 6},
526
+ "dims": {"esa_step": 128, "spin_sector_pairs": 6},
532
527
  "instrument": "lo",
533
528
  "num_counters": len(
534
529
  LO_COUNTERS_AGGREGATED_VARIABLE_NAMES
535
530
  ), # The number of counters depends on the number of active counters
536
- "output_dims": {"spin_sector_pairs": 6, "esa_step": 128},
537
531
  "support_variables": [
538
532
  "energy_table",
539
533
  "acquisition_time_per_step",
@@ -543,15 +537,15 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
543
537
  "st_bias_gain_mode",
544
538
  "data_quality",
545
539
  "spin_period",
540
+ "k_factor",
546
541
  ],
547
542
  "variable_names": LO_COUNTERS_AGGREGATED_VARIABLE_NAMES,
548
543
  },
549
544
  CODICEAPID.COD_LO_INST_COUNTS_SINGLES: {
550
545
  "dataset_name": "imap_codice_l1a_lo-counters-singles",
551
- "input_dims": {"esa_step": 128, "inst_az": 24, "spin_sector_pairs": 6},
546
+ "dims": {"esa_step": 128, "inst_az": 24, "spin_sector_pairs": 6},
552
547
  "instrument": "lo",
553
548
  "num_counters": 1,
554
- "output_dims": {"inst_az": 24, "spin_sector_pairs": 6, "esa_step": 128},
555
549
  "support_variables": [
556
550
  "energy_table",
557
551
  "acquisition_time_per_step",
@@ -561,15 +555,15 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
561
555
  "st_bias_gain_mode",
562
556
  "data_quality",
563
557
  "spin_period",
558
+ "k_factor",
564
559
  ],
565
560
  "variable_names": LO_COUNTERS_SINGLES_VARIABLE_NAMES,
566
561
  },
567
562
  CODICEAPID.COD_LO_SW_ANGULAR_COUNTS: {
568
563
  "dataset_name": "imap_codice_l1a_lo-sw-angular",
569
- "input_dims": {"esa_step": 128, "inst_az": 5, "spin_sector": 12},
564
+ "dims": {"esa_step": 128, "inst_az": 5, "spin_sector": 12},
570
565
  "instrument": "lo",
571
566
  "num_counters": 4,
572
- "output_dims": {"inst_az": 5, "spin_sector": 12, "esa_step": 128},
573
567
  "support_variables": [
574
568
  "energy_table",
575
569
  "acquisition_time_per_step",
@@ -579,15 +573,15 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
579
573
  "st_bias_gain_mode",
580
574
  "data_quality",
581
575
  "spin_period",
576
+ "k_factor",
582
577
  ],
583
578
  "variable_names": LO_SW_ANGULAR_VARIABLE_NAMES,
584
579
  },
585
580
  CODICEAPID.COD_LO_NSW_ANGULAR_COUNTS: {
586
581
  "dataset_name": "imap_codice_l1a_lo-nsw-angular",
587
- "input_dims": {"esa_step": 128, "inst_az": 19, "spin_sector": 12},
582
+ "dims": {"esa_step": 128, "inst_az": 19, "spin_sector": 12},
588
583
  "instrument": "lo",
589
584
  "num_counters": 1,
590
- "output_dims": {"inst_az": 19, "spin_sector": 12, "esa_step": 128},
591
585
  "support_variables": [
592
586
  "energy_table",
593
587
  "acquisition_time_per_step",
@@ -597,15 +591,15 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
597
591
  "st_bias_gain_mode",
598
592
  "data_quality",
599
593
  "spin_period",
594
+ "k_factor",
600
595
  ],
601
596
  "variable_names": LO_NSW_ANGULAR_VARIABLE_NAMES,
602
597
  },
603
598
  CODICEAPID.COD_LO_SW_PRIORITY_COUNTS: {
604
599
  "dataset_name": "imap_codice_l1a_lo-sw-priority",
605
- "input_dims": {"esa_step": 128, "spin_sector": 12},
600
+ "dims": {"esa_step": 128, "spin_sector": 12},
606
601
  "instrument": "lo",
607
602
  "num_counters": 5,
608
- "output_dims": {"spin_sector": 12, "esa_step": 128},
609
603
  "support_variables": [
610
604
  "energy_table",
611
605
  "acquisition_time_per_step",
@@ -615,15 +609,15 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
615
609
  "st_bias_gain_mode",
616
610
  "data_quality",
617
611
  "spin_period",
612
+ "k_factor",
618
613
  ],
619
614
  "variable_names": LO_SW_PRIORITY_VARIABLE_NAMES,
620
615
  },
621
616
  CODICEAPID.COD_LO_NSW_PRIORITY_COUNTS: {
622
617
  "dataset_name": "imap_codice_l1a_lo-nsw-priority",
623
- "input_dims": {"esa_step": 128, "spin_sector": 12},
618
+ "dims": {"esa_step": 128, "spin_sector": 12},
624
619
  "instrument": "lo",
625
620
  "num_counters": 2,
626
- "output_dims": {"spin_sector": 12, "esa_step": 128},
627
621
  "support_variables": [
628
622
  "energy_table",
629
623
  "acquisition_time_per_step",
@@ -633,15 +627,15 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
633
627
  "st_bias_gain_mode",
634
628
  "data_quality",
635
629
  "spin_period",
630
+ "k_factor",
636
631
  ],
637
632
  "variable_names": LO_NSW_PRIORITY_VARIABLE_NAMES,
638
633
  },
639
634
  CODICEAPID.COD_LO_SW_SPECIES_COUNTS: {
640
635
  "dataset_name": "imap_codice_l1a_lo-sw-species",
641
- "input_dims": {"esa_step": 128, "spin_sector": 1},
636
+ "dims": {"esa_step": 128, "spin_sector": 1},
642
637
  "instrument": "lo",
643
638
  "num_counters": 16,
644
- "output_dims": {"spin_sector": 1, "esa_step": 128},
645
639
  "support_variables": [
646
640
  "energy_table",
647
641
  "acquisition_time_per_step",
@@ -651,15 +645,15 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
651
645
  "st_bias_gain_mode",
652
646
  "data_quality",
653
647
  "spin_period",
648
+ "k_factor",
654
649
  ],
655
650
  "variable_names": LO_SW_SPECIES_VARIABLE_NAMES,
656
651
  },
657
652
  CODICEAPID.COD_LO_NSW_SPECIES_COUNTS: {
658
653
  "dataset_name": "imap_codice_l1a_lo-nsw-species",
659
- "input_dims": {"esa_step": 128, "spin_sector": 1},
654
+ "dims": {"esa_step": 128, "spin_sector": 1},
660
655
  "instrument": "lo",
661
656
  "num_counters": 8,
662
- "output_dims": {"spin_sector": 1, "esa_step": 128},
663
657
  "support_variables": [
664
658
  "energy_table",
665
659
  "acquisition_time_per_step",
@@ -669,6 +663,7 @@ DATA_PRODUCT_CONFIGURATIONS: dict[CODICEAPID | int, dict] = {
669
663
  "st_bias_gain_mode",
670
664
  "data_quality",
671
665
  "spin_period",
666
+ "k_factor",
672
667
  ],
673
668
  "variable_names": LO_NSW_SPECIES_VARIABLE_NAMES,
674
669
  },
@@ -737,42 +732,42 @@ DE_DATA_PRODUCT_CONFIGURATIONS: dict[Any, dict[str, Any]] = {
737
732
  CODICEAPID.COD_HI_PHA: {
738
733
  "num_priorities": 6,
739
734
  "bit_structure": {
740
- "SSDEnergy": {
735
+ "ssd_energy": {
741
736
  "bit_length": 11,
742
737
  "dtype": np.uint16,
743
738
  "fillval": np.iinfo(np.uint16).max,
744
739
  },
745
- "TOF": {
740
+ "tof": {
746
741
  "bit_length": 10,
747
742
  "dtype": np.uint16,
748
743
  "fillval": np.iinfo(np.uint16).max,
749
744
  },
750
- "SSD_ID": {
745
+ "ssd_id": {
751
746
  "bit_length": 4,
752
747
  "dtype": np.uint8,
753
748
  "fillval": np.iinfo(np.uint8).max,
754
749
  },
755
- "ERGE": {
750
+ "gain": {
756
751
  "bit_length": 2,
757
752
  "dtype": np.uint8,
758
753
  "fillval": np.iinfo(np.uint8).max,
759
754
  },
760
- "MultiFlag": {
755
+ "multi_flag": {
761
756
  "bit_length": 1,
762
757
  "dtype": np.uint8,
763
758
  "fillval": np.iinfo(np.uint8).max,
764
759
  },
765
- "Type": {
760
+ "type": {
766
761
  "bit_length": 2,
767
762
  "dtype": np.uint8,
768
763
  "fillval": np.iinfo(np.uint8).max,
769
764
  },
770
- "SpinAngle": {
765
+ "spin_sector": {
771
766
  "bit_length": 5,
772
767
  "dtype": np.uint8,
773
768
  "fillval": np.iinfo(np.uint8).max,
774
769
  },
775
- "SpinNumber": {
770
+ "spin_number": {
776
771
  "bit_length": 4,
777
772
  "dtype": np.uint8,
778
773
  "fillval": np.iinfo(np.uint8).max,
@@ -788,52 +783,52 @@ DE_DATA_PRODUCT_CONFIGURATIONS: dict[Any, dict[str, Any]] = {
788
783
  "fillval": np.iinfo(np.uint8).max,
789
784
  },
790
785
  },
791
- "cdf_fields": HI_PHA_CDF_FIELDS,
786
+ "cdf_fields": HI_DE_CDF_FIELDS,
792
787
  },
793
788
  CODICEAPID.COD_LO_PHA: {
794
789
  "num_priorities": 8,
795
790
  "bit_structure": {
796
- "APDGain": {
791
+ "gain": {
797
792
  "bit_length": 1,
798
793
  "dtype": np.uint8,
799
794
  "fillval": np.iinfo(np.uint8).max,
800
795
  },
801
- "APD_ID": {
796
+ "apd_id": {
802
797
  "bit_length": 5,
803
798
  "dtype": np.uint8,
804
799
  "fillval": np.iinfo(np.uint8).max,
805
800
  },
806
- "Position": {
801
+ "position": {
807
802
  "bit_length": 5,
808
803
  "dtype": np.uint8,
809
804
  "fillval": np.iinfo(np.uint8).max,
810
805
  },
811
- "APDEnergy": {
806
+ "apd_energy": {
812
807
  "bit_length": 9,
813
808
  "dtype": np.uint16,
814
809
  "fillval": np.iinfo(np.uint16).max,
815
810
  },
816
- "TOF": {
811
+ "tof": {
817
812
  "bit_length": 10,
818
813
  "dtype": np.uint16,
819
814
  "fillval": np.iinfo(np.uint16).max,
820
815
  },
821
- "MultiFlag": {
816
+ "multi_flag": {
822
817
  "bit_length": 1,
823
818
  "dtype": np.uint8,
824
819
  "fillval": np.iinfo(np.uint8).max,
825
820
  },
826
- "PHAType": {
821
+ "type": {
827
822
  "bit_length": 2,
828
823
  "dtype": np.uint8,
829
824
  "fillval": np.iinfo(np.uint8).max,
830
825
  },
831
- "SpinAngle": {
826
+ "spin_sector": {
832
827
  "bit_length": 5,
833
828
  "dtype": np.uint8,
834
829
  "fillval": np.iinfo(np.uint8).max,
835
830
  },
836
- "EnergyStep": {
831
+ "energy_step": {
837
832
  "bit_length": 7,
838
833
  "dtype": np.uint8,
839
834
  "fillval": np.iinfo(np.uint8).max,
@@ -849,7 +844,7 @@ DE_DATA_PRODUCT_CONFIGURATIONS: dict[Any, dict[str, Any]] = {
849
844
  "fillval": np.iinfo(np.uint8).max,
850
845
  },
851
846
  },
852
- "cdf_fields": LO_PHA_CDF_FIELDS,
847
+ "cdf_fields": LO_DE_CDF_FIELDS,
853
848
  },
854
849
  }
855
850
 
@@ -1040,230 +1035,230 @@ LOSSY_A_TABLE = {
1040
1035
  29: 29,
1041
1036
  30: 30,
1042
1037
  31: 31,
1043
- 32: 33,
1044
- 33: 35,
1045
- 34: 37,
1046
- 35: 39,
1047
- 36: 41,
1048
- 37: 43,
1049
- 38: 45,
1050
- 39: 47,
1051
- 40: 49,
1052
- 41: 51,
1053
- 42: 53,
1054
- 43: 55,
1055
- 44: 57,
1056
- 45: 59,
1057
- 46: 61,
1058
- 47: 63,
1059
- 48: 67,
1060
- 49: 71,
1061
- 50: 75,
1062
- 51: 79,
1063
- 52: 83,
1064
- 53: 87,
1065
- 54: 91,
1066
- 55: 95,
1067
- 56: 99,
1068
- 57: 103,
1069
- 58: 107,
1070
- 59: 111,
1071
- 60: 115,
1072
- 61: 119,
1073
- 62: 123,
1074
- 63: 127,
1075
- 64: 135,
1076
- 65: 143,
1077
- 66: 151,
1078
- 67: 159,
1079
- 68: 167,
1080
- 69: 175,
1081
- 70: 183,
1082
- 71: 191,
1083
- 72: 199,
1084
- 73: 207,
1085
- 74: 215,
1086
- 75: 223,
1087
- 76: 231,
1088
- 77: 239,
1089
- 78: 247,
1090
- 79: 255,
1091
- 80: 271,
1092
- 81: 287,
1093
- 82: 303,
1094
- 83: 319,
1095
- 84: 335,
1096
- 85: 351,
1097
- 86: 367,
1098
- 87: 383,
1099
- 88: 399,
1100
- 89: 415,
1101
- 90: 431,
1102
- 91: 447,
1103
- 92: 463,
1104
- 93: 479,
1105
- 94: 495,
1106
- 95: 511,
1107
- 96: 543,
1108
- 97: 575,
1109
- 98: 607,
1110
- 99: 639,
1111
- 100: 671,
1112
- 101: 703,
1113
- 102: 735,
1114
- 103: 767,
1115
- 104: 799,
1116
- 105: 831,
1117
- 106: 863,
1118
- 107: 895,
1119
- 108: 927,
1120
- 109: 959,
1121
- 110: 991,
1122
- 111: 1023,
1123
- 112: 1087,
1124
- 113: 1151,
1125
- 114: 1215,
1126
- 115: 1279,
1127
- 116: 1343,
1128
- 117: 1407,
1129
- 118: 1471,
1130
- 119: 1535,
1131
- 120: 1599,
1132
- 121: 1663,
1133
- 122: 1727,
1134
- 123: 1791,
1135
- 124: 1855,
1136
- 125: 1919,
1137
- 126: 1983,
1138
- 127: 2047,
1139
- 128: 2175,
1140
- 129: 2303,
1141
- 130: 2431,
1142
- 131: 2559,
1143
- 132: 2687,
1144
- 133: 2815,
1145
- 134: 2943,
1146
- 135: 3071,
1147
- 136: 3199,
1148
- 137: 3327,
1149
- 138: 3455,
1150
- 139: 3583,
1151
- 140: 3711,
1152
- 141: 3839,
1153
- 142: 3967,
1154
- 143: 4095,
1155
- 144: 4351,
1156
- 145: 4607,
1157
- 146: 4863,
1158
- 147: 5119,
1159
- 148: 5375,
1160
- 149: 5631,
1161
- 150: 5887,
1162
- 151: 6143,
1163
- 152: 6399,
1164
- 153: 6655,
1165
- 154: 6911,
1166
- 155: 7167,
1167
- 156: 7423,
1168
- 157: 7679,
1169
- 158: 7935,
1170
- 159: 8191,
1171
- 160: 8703,
1172
- 161: 9215,
1173
- 162: 9727,
1174
- 163: 10239,
1175
- 164: 10751,
1176
- 165: 11263,
1177
- 166: 11775,
1178
- 167: 12287,
1179
- 168: 12799,
1180
- 169: 13311,
1181
- 170: 13823,
1182
- 171: 14335,
1183
- 172: 14847,
1184
- 173: 15359,
1185
- 174: 15871,
1186
- 175: 16383,
1187
- 176: 17407,
1188
- 177: 18431,
1189
- 178: 19455,
1190
- 179: 20479,
1191
- 180: 21503,
1192
- 181: 22527,
1193
- 182: 23551,
1194
- 183: 24575,
1195
- 184: 25599,
1196
- 185: 26623,
1197
- 186: 27647,
1198
- 187: 28671,
1199
- 188: 29695,
1200
- 189: 30719,
1201
- 190: 31743,
1202
- 191: 32767,
1203
- 192: 34815,
1204
- 193: 36863,
1205
- 194: 38911,
1206
- 195: 40959,
1207
- 196: 43007,
1208
- 197: 45055,
1209
- 198: 47103,
1210
- 199: 49151,
1211
- 200: 51199,
1212
- 201: 53247,
1213
- 202: 55295,
1214
- 203: 57343,
1215
- 204: 59391,
1216
- 205: 61439,
1217
- 206: 63487,
1218
- 207: 65535,
1219
- 208: 69631,
1220
- 209: 73727,
1221
- 210: 77823,
1222
- 211: 81919,
1223
- 212: 86015,
1224
- 213: 90111,
1225
- 214: 94207,
1226
- 215: 98303,
1227
- 216: 102399,
1228
- 217: 106495,
1229
- 218: 110591,
1230
- 219: 114687,
1231
- 220: 118783,
1232
- 221: 122879,
1233
- 222: 126975,
1234
- 223: 131071,
1235
- 224: 139263,
1236
- 225: 147455,
1237
- 226: 155647,
1238
- 227: 163839,
1239
- 228: 172031,
1240
- 229: 180223,
1241
- 230: 188415,
1242
- 231: 196607,
1243
- 232: 204799,
1244
- 233: 212991,
1245
- 234: 221183,
1246
- 235: 229375,
1247
- 236: 237567,
1248
- 237: 245759,
1249
- 238: 253951,
1250
- 239: 262143,
1251
- 240: 278527,
1252
- 241: 294911,
1253
- 242: 311295,
1254
- 243: 327679,
1255
- 244: 344063,
1256
- 245: 360447,
1257
- 246: 376831,
1258
- 247: 393215,
1259
- 248: 409599,
1260
- 249: 425983,
1261
- 250: 442367,
1262
- 251: 458751,
1263
- 252: 475135,
1264
- 253: 491519,
1265
- 254: 507903,
1266
- 255: 4294967294,
1038
+ 32: 32,
1039
+ 33: 34,
1040
+ 34: 36,
1041
+ 35: 38,
1042
+ 36: 40,
1043
+ 37: 42,
1044
+ 38: 44,
1045
+ 39: 46,
1046
+ 40: 48,
1047
+ 41: 50,
1048
+ 42: 52,
1049
+ 43: 54,
1050
+ 44: 56,
1051
+ 45: 58,
1052
+ 46: 60,
1053
+ 47: 62,
1054
+ 48: 65,
1055
+ 49: 69,
1056
+ 50: 73,
1057
+ 51: 77,
1058
+ 52: 81,
1059
+ 53: 85,
1060
+ 54: 89,
1061
+ 55: 93,
1062
+ 56: 97,
1063
+ 57: 101,
1064
+ 58: 105,
1065
+ 59: 109,
1066
+ 60: 113,
1067
+ 61: 117,
1068
+ 62: 121,
1069
+ 63: 125,
1070
+ 64: 131,
1071
+ 65: 139,
1072
+ 66: 147,
1073
+ 67: 155,
1074
+ 68: 163,
1075
+ 69: 171,
1076
+ 70: 179,
1077
+ 71: 187,
1078
+ 72: 195,
1079
+ 73: 203,
1080
+ 74: 211,
1081
+ 75: 219,
1082
+ 76: 227,
1083
+ 77: 235,
1084
+ 78: 243,
1085
+ 79: 251,
1086
+ 80: 263,
1087
+ 81: 279,
1088
+ 82: 295,
1089
+ 83: 311,
1090
+ 84: 327,
1091
+ 85: 343,
1092
+ 86: 359,
1093
+ 87: 375,
1094
+ 88: 391,
1095
+ 89: 407,
1096
+ 90: 423,
1097
+ 91: 439,
1098
+ 92: 455,
1099
+ 93: 471,
1100
+ 94: 487,
1101
+ 95: 503,
1102
+ 96: 527,
1103
+ 97: 559,
1104
+ 98: 591,
1105
+ 99: 623,
1106
+ 100: 655,
1107
+ 101: 687,
1108
+ 102: 719,
1109
+ 103: 751,
1110
+ 104: 783,
1111
+ 105: 815,
1112
+ 106: 847,
1113
+ 107: 879,
1114
+ 108: 911,
1115
+ 109: 943,
1116
+ 110: 975,
1117
+ 111: 1007,
1118
+ 112: 1055,
1119
+ 113: 1119,
1120
+ 114: 1183,
1121
+ 115: 1247,
1122
+ 116: 1311,
1123
+ 117: 1375,
1124
+ 118: 1439,
1125
+ 119: 1503,
1126
+ 120: 1567,
1127
+ 121: 1631,
1128
+ 122: 1695,
1129
+ 123: 1759,
1130
+ 124: 1823,
1131
+ 125: 1887,
1132
+ 126: 1951,
1133
+ 127: 2015,
1134
+ 128: 2111,
1135
+ 129: 2239,
1136
+ 130: 2367,
1137
+ 131: 2495,
1138
+ 132: 2623,
1139
+ 133: 2751,
1140
+ 134: 2879,
1141
+ 135: 3007,
1142
+ 136: 3135,
1143
+ 137: 3263,
1144
+ 138: 3391,
1145
+ 139: 3519,
1146
+ 140: 3647,
1147
+ 141: 3775,
1148
+ 142: 3903,
1149
+ 143: 4031,
1150
+ 144: 4223,
1151
+ 145: 4479,
1152
+ 146: 4735,
1153
+ 147: 4991,
1154
+ 148: 5247,
1155
+ 149: 5503,
1156
+ 150: 5759,
1157
+ 151: 6015,
1158
+ 152: 6271,
1159
+ 153: 6527,
1160
+ 154: 6783,
1161
+ 155: 7039,
1162
+ 156: 7295,
1163
+ 157: 7551,
1164
+ 158: 7807,
1165
+ 159: 8063,
1166
+ 160: 8447,
1167
+ 161: 8959,
1168
+ 162: 9471,
1169
+ 163: 9983,
1170
+ 164: 10495,
1171
+ 165: 11007,
1172
+ 166: 11519,
1173
+ 167: 12031,
1174
+ 168: 12543,
1175
+ 169: 13055,
1176
+ 170: 13567,
1177
+ 171: 14079,
1178
+ 172: 14591,
1179
+ 173: 15103,
1180
+ 174: 15615,
1181
+ 175: 16127,
1182
+ 176: 16895,
1183
+ 177: 17919,
1184
+ 178: 18943,
1185
+ 179: 19967,
1186
+ 180: 20991,
1187
+ 181: 22015,
1188
+ 182: 23039,
1189
+ 183: 24063,
1190
+ 184: 25087,
1191
+ 185: 26111,
1192
+ 186: 27135,
1193
+ 187: 28159,
1194
+ 188: 29183,
1195
+ 189: 30207,
1196
+ 190: 31231,
1197
+ 191: 32255,
1198
+ 192: 33791,
1199
+ 193: 35839,
1200
+ 194: 37887,
1201
+ 195: 39935,
1202
+ 196: 41983,
1203
+ 197: 44031,
1204
+ 198: 46079,
1205
+ 199: 48127,
1206
+ 200: 50175,
1207
+ 201: 52223,
1208
+ 202: 54271,
1209
+ 203: 56319,
1210
+ 204: 58367,
1211
+ 205: 60415,
1212
+ 206: 62463,
1213
+ 207: 64511,
1214
+ 208: 67583,
1215
+ 209: 71679,
1216
+ 210: 75775,
1217
+ 211: 79871,
1218
+ 212: 83967,
1219
+ 213: 88063,
1220
+ 214: 92159,
1221
+ 215: 96255,
1222
+ 216: 100351,
1223
+ 217: 104447,
1224
+ 218: 108543,
1225
+ 219: 112639,
1226
+ 220: 116735,
1227
+ 221: 120831,
1228
+ 222: 124927,
1229
+ 223: 129023,
1230
+ 224: 135167,
1231
+ 225: 143359,
1232
+ 226: 151551,
1233
+ 227: 159743,
1234
+ 228: 167935,
1235
+ 229: 176127,
1236
+ 230: 184319,
1237
+ 231: 192511,
1238
+ 232: 200703,
1239
+ 233: 208895,
1240
+ 234: 217087,
1241
+ 235: 225279,
1242
+ 236: 233471,
1243
+ 237: 241663,
1244
+ 238: 249855,
1245
+ 239: 258047,
1246
+ 240: 270335,
1247
+ 241: 286719,
1248
+ 242: 303103,
1249
+ 243: 319487,
1250
+ 244: 335871,
1251
+ 245: 352255,
1252
+ 246: 368639,
1253
+ 247: 385023,
1254
+ 248: 401407,
1255
+ 249: 417791,
1256
+ 250: 434175,
1257
+ 251: 450559,
1258
+ 252: 466943,
1259
+ 253: 483327,
1260
+ 254: 499711,
1261
+ 255: 2147737599,
1267
1262
  }
1268
1263
 
1269
1264
  LOSSY_B_TABLE = {
@@ -1299,230 +1294,363 @@ LOSSY_B_TABLE = {
1299
1294
  29: 29,
1300
1295
  30: 30,
1301
1296
  31: 31,
1302
- 32: 33,
1303
- 33: 35,
1304
- 34: 37,
1305
- 35: 39,
1306
- 36: 41,
1307
- 37: 43,
1308
- 38: 45,
1309
- 39: 47,
1310
- 40: 49,
1311
- 41: 51,
1312
- 42: 53,
1313
- 43: 55,
1314
- 44: 57,
1315
- 45: 59,
1316
- 46: 61,
1317
- 47: 63,
1318
- 48: 67,
1319
- 49: 71,
1320
- 50: 75,
1321
- 51: 79,
1322
- 52: 83,
1323
- 53: 87,
1324
- 54: 91,
1325
- 55: 95,
1326
- 56: 99,
1327
- 57: 103,
1328
- 58: 107,
1329
- 59: 111,
1330
- 60: 115,
1331
- 61: 119,
1332
- 62: 123,
1333
- 63: 127,
1334
- 64: 135,
1335
- 65: 143,
1336
- 66: 151,
1337
- 67: 159,
1338
- 68: 167,
1339
- 69: 175,
1340
- 70: 183,
1341
- 71: 191,
1342
- 72: 199,
1343
- 73: 207,
1344
- 74: 215,
1345
- 75: 223,
1346
- 76: 231,
1347
- 77: 239,
1348
- 78: 247,
1349
- 79: 255,
1350
- 80: 271,
1351
- 81: 287,
1352
- 82: 303,
1353
- 83: 319,
1354
- 84: 335,
1355
- 85: 351,
1356
- 86: 367,
1357
- 87: 383,
1358
- 88: 399,
1359
- 89: 415,
1360
- 90: 431,
1361
- 91: 447,
1362
- 92: 463,
1363
- 93: 479,
1364
- 94: 495,
1365
- 95: 511,
1366
- 96: 543,
1367
- 97: 575,
1368
- 98: 607,
1369
- 99: 639,
1370
- 100: 671,
1371
- 101: 703,
1372
- 102: 735,
1373
- 103: 767,
1374
- 104: 799,
1375
- 105: 831,
1376
- 106: 863,
1377
- 107: 895,
1378
- 108: 927,
1379
- 109: 959,
1380
- 110: 991,
1381
- 111: 1023,
1382
- 112: 1087,
1383
- 113: 1151,
1384
- 114: 1215,
1385
- 115: 1279,
1386
- 116: 1343,
1387
- 117: 1407,
1388
- 118: 1471,
1389
- 119: 1535,
1390
- 120: 1599,
1391
- 121: 1663,
1392
- 122: 1727,
1393
- 123: 1791,
1394
- 124: 1855,
1395
- 125: 1919,
1396
- 126: 1983,
1397
- 127: 2047,
1398
- 128: 2175,
1399
- 129: 2303,
1400
- 130: 2431,
1401
- 131: 2559,
1402
- 132: 2687,
1403
- 133: 2815,
1404
- 134: 2943,
1405
- 135: 3071,
1406
- 136: 3199,
1407
- 137: 3327,
1408
- 138: 3455,
1409
- 139: 3583,
1410
- 140: 3711,
1411
- 141: 3839,
1412
- 142: 3967,
1413
- 143: 4095,
1414
- 144: 4351,
1415
- 145: 4607,
1416
- 146: 4863,
1417
- 147: 5119,
1418
- 148: 5375,
1419
- 149: 5631,
1420
- 150: 5887,
1421
- 151: 6143,
1422
- 152: 6399,
1423
- 153: 6655,
1424
- 154: 6911,
1425
- 155: 7167,
1426
- 156: 7423,
1427
- 157: 7679,
1428
- 158: 7935,
1429
- 159: 8191,
1430
- 160: 8703,
1431
- 161: 9215,
1432
- 162: 9727,
1433
- 163: 10239,
1434
- 164: 10751,
1435
- 165: 11263,
1436
- 166: 11775,
1437
- 167: 12287,
1438
- 168: 12799,
1439
- 169: 13311,
1440
- 170: 13823,
1441
- 171: 14335,
1442
- 172: 14847,
1443
- 173: 15359,
1444
- 174: 15871,
1445
- 175: 16383,
1446
- 176: 17407,
1447
- 177: 18431,
1448
- 178: 19455,
1449
- 179: 20479,
1450
- 180: 21503,
1451
- 181: 22527,
1452
- 182: 23551,
1453
- 183: 24575,
1454
- 184: 25599,
1455
- 185: 26623,
1456
- 186: 27647,
1457
- 187: 28671,
1458
- 188: 29695,
1459
- 189: 30719,
1460
- 190: 31743,
1461
- 191: 32767,
1462
- 192: 36863,
1463
- 193: 40959,
1464
- 194: 45055,
1465
- 195: 49151,
1466
- 196: 53247,
1467
- 197: 57343,
1468
- 198: 61439,
1469
- 199: 65535,
1470
- 200: 73727,
1471
- 201: 81919,
1472
- 202: 90111,
1473
- 203: 98303,
1474
- 204: 106495,
1475
- 205: 114687,
1476
- 206: 122879,
1477
- 207: 131071,
1478
- 208: 147455,
1479
- 209: 163839,
1480
- 210: 180223,
1481
- 211: 196607,
1482
- 212: 212991,
1483
- 213: 229375,
1484
- 214: 245759,
1485
- 215: 262143,
1486
- 216: 294911,
1487
- 217: 327679,
1488
- 218: 360447,
1489
- 219: 393215,
1490
- 220: 425983,
1491
- 221: 458751,
1492
- 222: 491519,
1493
- 223: 524287,
1494
- 224: 589823,
1495
- 225: 655359,
1496
- 226: 720895,
1497
- 227: 786431,
1498
- 228: 851967,
1499
- 229: 917503,
1500
- 230: 983039,
1501
- 231: 1048575,
1502
- 232: 1179647,
1503
- 233: 1310719,
1504
- 234: 1441791,
1505
- 235: 1572863,
1506
- 236: 1703935,
1507
- 237: 1835007,
1508
- 238: 1966079,
1509
- 239: 2097151,
1510
- 240: 2359295,
1511
- 241: 2621439,
1512
- 242: 2883583,
1513
- 243: 3145727,
1514
- 244: 3407871,
1515
- 245: 3670015,
1516
- 246: 3932159,
1517
- 247: 4194303,
1518
- 248: 4718591,
1519
- 249: 5242879,
1520
- 250: 5767167,
1521
- 251: 6291455,
1522
- 252: 6815743,
1523
- 253: 7340031,
1524
- 254: 7864319,
1525
- 255: 4294967294,
1297
+ 32: 32,
1298
+ 33: 34,
1299
+ 34: 36,
1300
+ 35: 38,
1301
+ 36: 40,
1302
+ 37: 42,
1303
+ 38: 44,
1304
+ 39: 46,
1305
+ 40: 48,
1306
+ 41: 50,
1307
+ 42: 52,
1308
+ 43: 54,
1309
+ 44: 56,
1310
+ 45: 58,
1311
+ 46: 60,
1312
+ 47: 62,
1313
+ 48: 65,
1314
+ 49: 69,
1315
+ 50: 73,
1316
+ 51: 77,
1317
+ 52: 81,
1318
+ 53: 85,
1319
+ 54: 89,
1320
+ 55: 93,
1321
+ 56: 97,
1322
+ 57: 101,
1323
+ 58: 105,
1324
+ 59: 109,
1325
+ 60: 113,
1326
+ 61: 117,
1327
+ 62: 121,
1328
+ 63: 125,
1329
+ 64: 131,
1330
+ 65: 139,
1331
+ 66: 147,
1332
+ 67: 155,
1333
+ 68: 163,
1334
+ 69: 171,
1335
+ 70: 179,
1336
+ 71: 187,
1337
+ 72: 195,
1338
+ 73: 203,
1339
+ 74: 211,
1340
+ 75: 219,
1341
+ 76: 227,
1342
+ 77: 235,
1343
+ 78: 243,
1344
+ 79: 251,
1345
+ 80: 263,
1346
+ 81: 279,
1347
+ 82: 295,
1348
+ 83: 311,
1349
+ 84: 327,
1350
+ 85: 343,
1351
+ 86: 359,
1352
+ 87: 375,
1353
+ 88: 391,
1354
+ 89: 407,
1355
+ 90: 423,
1356
+ 91: 439,
1357
+ 92: 455,
1358
+ 93: 471,
1359
+ 94: 487,
1360
+ 95: 503,
1361
+ 96: 527,
1362
+ 97: 559,
1363
+ 98: 591,
1364
+ 99: 623,
1365
+ 100: 655,
1366
+ 101: 687,
1367
+ 102: 719,
1368
+ 103: 751,
1369
+ 104: 783,
1370
+ 105: 815,
1371
+ 106: 847,
1372
+ 107: 879,
1373
+ 108: 911,
1374
+ 109: 943,
1375
+ 110: 975,
1376
+ 111: 1007,
1377
+ 112: 1055,
1378
+ 113: 1119,
1379
+ 114: 1183,
1380
+ 115: 1247,
1381
+ 116: 1311,
1382
+ 117: 1375,
1383
+ 118: 1439,
1384
+ 119: 1503,
1385
+ 120: 1567,
1386
+ 121: 1631,
1387
+ 122: 1695,
1388
+ 123: 1759,
1389
+ 124: 1823,
1390
+ 125: 1887,
1391
+ 126: 1951,
1392
+ 127: 2015,
1393
+ 128: 2111,
1394
+ 129: 2239,
1395
+ 130: 2367,
1396
+ 131: 2495,
1397
+ 132: 2623,
1398
+ 133: 2751,
1399
+ 134: 2879,
1400
+ 135: 3007,
1401
+ 136: 3135,
1402
+ 137: 3263,
1403
+ 138: 3391,
1404
+ 139: 3519,
1405
+ 140: 3647,
1406
+ 141: 3775,
1407
+ 142: 3903,
1408
+ 143: 4031,
1409
+ 144: 4223,
1410
+ 145: 4479,
1411
+ 146: 4735,
1412
+ 147: 4991,
1413
+ 148: 5247,
1414
+ 149: 5503,
1415
+ 150: 5759,
1416
+ 151: 6015,
1417
+ 152: 6271,
1418
+ 153: 6527,
1419
+ 154: 6783,
1420
+ 155: 7039,
1421
+ 156: 7295,
1422
+ 157: 7551,
1423
+ 158: 7807,
1424
+ 159: 8063,
1425
+ 160: 8447,
1426
+ 161: 8959,
1427
+ 162: 9471,
1428
+ 163: 9983,
1429
+ 164: 10495,
1430
+ 165: 11007,
1431
+ 166: 11519,
1432
+ 167: 12031,
1433
+ 168: 12543,
1434
+ 169: 13055,
1435
+ 170: 13567,
1436
+ 171: 14079,
1437
+ 172: 14591,
1438
+ 173: 15103,
1439
+ 174: 15615,
1440
+ 175: 16127,
1441
+ 176: 16895,
1442
+ 177: 17919,
1443
+ 178: 18943,
1444
+ 179: 19967,
1445
+ 180: 20991,
1446
+ 181: 22015,
1447
+ 182: 23039,
1448
+ 183: 24063,
1449
+ 184: 25087,
1450
+ 185: 26111,
1451
+ 186: 27135,
1452
+ 187: 28159,
1453
+ 188: 29183,
1454
+ 189: 30207,
1455
+ 190: 31231,
1456
+ 191: 32255,
1457
+ 192: 34815,
1458
+ 193: 38911,
1459
+ 194: 43007,
1460
+ 195: 47103,
1461
+ 196: 51199,
1462
+ 197: 55295,
1463
+ 198: 59391,
1464
+ 199: 63487,
1465
+ 200: 69631,
1466
+ 201: 77823,
1467
+ 202: 86015,
1468
+ 203: 94207,
1469
+ 204: 102399,
1470
+ 205: 110591,
1471
+ 206: 118783,
1472
+ 207: 126975,
1473
+ 208: 139263,
1474
+ 209: 155647,
1475
+ 210: 172031,
1476
+ 211: 188415,
1477
+ 212: 204799,
1478
+ 213: 221183,
1479
+ 214: 237567,
1480
+ 215: 253951,
1481
+ 216: 278527,
1482
+ 217: 311295,
1483
+ 218: 344063,
1484
+ 219: 376831,
1485
+ 220: 409599,
1486
+ 221: 442367,
1487
+ 222: 475135,
1488
+ 223: 507903,
1489
+ 224: 557055,
1490
+ 225: 622591,
1491
+ 226: 688127,
1492
+ 227: 753663,
1493
+ 228: 819199,
1494
+ 229: 884735,
1495
+ 230: 950271,
1496
+ 231: 1015807,
1497
+ 232: 1114111,
1498
+ 233: 1245183,
1499
+ 234: 1376255,
1500
+ 235: 1507327,
1501
+ 236: 1638399,
1502
+ 237: 1769471,
1503
+ 238: 1900543,
1504
+ 239: 2031615,
1505
+ 240: 2228223,
1506
+ 241: 2490367,
1507
+ 242: 2752511,
1508
+ 243: 3014655,
1509
+ 244: 3276799,
1510
+ 245: 3538943,
1511
+ 246: 3801087,
1512
+ 247: 4063231,
1513
+ 248: 4456447,
1514
+ 249: 4980735,
1515
+ 250: 5505023,
1516
+ 251: 6029311,
1517
+ 252: 6553599,
1518
+ 253: 7077887,
1519
+ 254: 7602175,
1520
+ 255: 2151415807,
1521
+ }
1522
+
1523
+ # Lookup table for CoDICE-Lo despinning pixel orientations
1524
+ # See section 9.3.4 of the algorithm document for further information
1525
+ PIXEL_ORIENTATIONS = {
1526
+ 0: "A",
1527
+ 1: "B",
1528
+ 2: "A",
1529
+ 3: "B",
1530
+ 4: "A",
1531
+ 5: "A",
1532
+ 6: "B",
1533
+ 7: "B",
1534
+ 8: "A",
1535
+ 9: "A",
1536
+ 10: "B",
1537
+ 11: "B",
1538
+ 12: "A",
1539
+ 13: "A",
1540
+ 14: "A",
1541
+ 15: "B",
1542
+ 16: "B",
1543
+ 17: "B",
1544
+ 18: "A",
1545
+ 19: "A",
1546
+ 20: "A",
1547
+ 21: "B",
1548
+ 22: "B",
1549
+ 23: "B",
1550
+ 24: "A",
1551
+ 25: "A",
1552
+ 26: "A",
1553
+ 27: "A",
1554
+ 28: "B",
1555
+ 29: "B",
1556
+ 30: "B",
1557
+ 31: "B",
1558
+ 32: "A",
1559
+ 33: "A",
1560
+ 34: "A",
1561
+ 35: "A",
1562
+ 36: "B",
1563
+ 37: "B",
1564
+ 38: "B",
1565
+ 39: "B",
1566
+ 40: "A",
1567
+ 41: "A",
1568
+ 42: "A",
1569
+ 43: "A",
1570
+ 44: "A",
1571
+ 45: "B",
1572
+ 46: "B",
1573
+ 47: "B",
1574
+ 48: "B",
1575
+ 49: "B",
1576
+ 50: "A",
1577
+ 51: "A",
1578
+ 52: "A",
1579
+ 53: "A",
1580
+ 54: "A",
1581
+ 55: "B",
1582
+ 56: "B",
1583
+ 57: "B",
1584
+ 58: "B",
1585
+ 59: "B",
1586
+ 60: "A",
1587
+ 61: "A",
1588
+ 62: "A",
1589
+ 63: "A",
1590
+ 64: "A",
1591
+ 65: "B",
1592
+ 66: "B",
1593
+ 67: "B",
1594
+ 68: "B",
1595
+ 69: "B",
1596
+ 70: "A",
1597
+ 71: "A",
1598
+ 72: "A",
1599
+ 73: "A",
1600
+ 74: "A",
1601
+ 75: "B",
1602
+ 76: "B",
1603
+ 77: "B",
1604
+ 78: "B",
1605
+ 79: "B",
1606
+ 80: "A",
1607
+ 81: "A",
1608
+ 82: "A",
1609
+ 83: "A",
1610
+ 84: "A",
1611
+ 85: "A",
1612
+ 86: "B",
1613
+ 87: "B",
1614
+ 88: "B",
1615
+ 89: "B",
1616
+ 90: "B",
1617
+ 91: "B",
1618
+ 92: "A",
1619
+ 93: "A",
1620
+ 94: "A",
1621
+ 95: "A",
1622
+ 96: "A",
1623
+ 97: "A",
1624
+ 98: "B",
1625
+ 99: "B",
1626
+ 100: "B",
1627
+ 101: "B",
1628
+ 102: "B",
1629
+ 103: "B",
1630
+ 104: "A",
1631
+ 105: "A",
1632
+ 106: "A",
1633
+ 107: "A",
1634
+ 108: "A",
1635
+ 109: "A",
1636
+ 110: "B",
1637
+ 111: "B",
1638
+ 112: "B",
1639
+ 113: "B",
1640
+ 114: "B",
1641
+ 115: "B",
1642
+ 116: "A",
1643
+ 117: "A",
1644
+ 118: "A",
1645
+ 119: "A",
1646
+ 120: "A",
1647
+ 121: "A",
1648
+ 122: "B",
1649
+ 123: "B",
1650
+ 124: "B",
1651
+ 125: "B",
1652
+ 126: "B",
1653
+ 127: "B",
1526
1654
  }
1527
1655
 
1528
1656
  # Derived acquisition times that get stored in CDF data variables in L1a
@@ -1531,523 +1659,523 @@ LOSSY_B_TABLE = {
1531
1659
  # processing.
1532
1660
  ACQUISITION_TIMES = {
1533
1661
  0: [
1534
- 578.7083,
1535
- 578.7083,
1536
- 578.7083,
1537
- 578.7083,
1538
- 289.35416,
1539
- 289.35416,
1540
- 289.35416,
1541
- 289.35416,
1542
- 289.35416,
1543
- 289.35416,
1544
- 289.35416,
1545
- 289.35416,
1546
- 192.90277,
1547
- 192.90277,
1548
- 192.90277,
1549
- 192.90277,
1550
- 192.90277,
1551
- 192.90277,
1552
- 192.90277,
1553
- 192.90277,
1554
- 192.90277,
1555
- 192.90277,
1556
- 192.90277,
1557
- 192.90277,
1558
- 144.67708,
1559
- 144.67708,
1560
- 144.67708,
1561
- 144.67708,
1562
- 144.67708,
1563
- 144.67708,
1564
- 144.67708,
1565
- 144.67708,
1566
- 144.67708,
1567
- 144.67708,
1568
- 144.67708,
1569
- 144.67708,
1570
- 144.67708,
1571
- 144.67708,
1572
- 144.67708,
1573
- 144.67708,
1574
- 115.74167,
1575
- 115.74167,
1576
- 115.74167,
1577
- 115.74167,
1578
- 115.74167,
1579
- 115.74167,
1580
- 115.74167,
1581
- 115.74167,
1582
- 115.74167,
1583
- 115.74167,
1584
- 115.74167,
1585
- 115.74167,
1586
- 115.74167,
1587
- 115.74167,
1588
- 115.74167,
1589
- 115.74167,
1590
- 115.74167,
1591
- 115.74167,
1592
- 115.74167,
1593
- 115.74167,
1594
- 115.74167,
1595
- 115.74167,
1596
- 115.74167,
1597
- 115.74167,
1598
- 115.74167,
1599
- 115.74167,
1600
- 115.74167,
1601
- 115.74167,
1602
- 115.74167,
1603
- 115.74167,
1604
- 115.74167,
1605
- 115.74167,
1606
- 115.74167,
1607
- 115.74167,
1608
- 115.74167,
1609
- 115.74167,
1610
- 115.74167,
1611
- 115.74167,
1612
- 115.74167,
1613
- 115.74167,
1614
- 95.69444,
1615
- 95.69444,
1616
- 95.69444,
1617
- 95.69444,
1618
- 95.69444,
1619
- 95.69444,
1620
- 95.69444,
1621
- 95.69444,
1622
- 95.69444,
1623
- 95.69444,
1624
- 95.69444,
1625
- 95.69444,
1626
- 95.69444,
1627
- 95.69444,
1628
- 95.69444,
1629
- 95.69444,
1630
- 95.69444,
1631
- 95.69444,
1632
- 95.69444,
1633
- 95.69444,
1634
- 95.69444,
1635
- 95.69444,
1636
- 95.69444,
1637
- 95.69444,
1638
- 95.69444,
1639
- 95.69444,
1640
- 95.69444,
1641
- 95.69444,
1642
- 95.69444,
1643
- 95.69444,
1644
- 95.69444,
1645
- 95.69444,
1646
- 95.69444,
1647
- 95.69444,
1648
- 95.69444,
1649
- 95.69444,
1650
- 95.69444,
1651
- 95.69444,
1652
- 95.69444,
1653
- 95.69444,
1654
- 95.69444,
1655
- 95.69444,
1656
- 95.69444,
1657
- 95.69444,
1658
- 95.69444,
1659
- 95.69444,
1660
- 95.69444,
1661
- 95.69444,
1662
+ 578.70833333,
1663
+ 578.70833333,
1664
+ 578.70833333,
1665
+ 578.70833333,
1666
+ 289.35416667,
1667
+ 289.35416667,
1668
+ 289.35416667,
1669
+ 289.35416667,
1670
+ 289.35416667,
1671
+ 289.35416667,
1672
+ 289.35416667,
1673
+ 289.35416667,
1674
+ 192.90277778,
1675
+ 192.90277778,
1676
+ 192.90277778,
1677
+ 192.90277778,
1678
+ 192.90277778,
1679
+ 192.90277778,
1680
+ 192.90277778,
1681
+ 192.90277778,
1682
+ 192.90277778,
1683
+ 192.90277778,
1684
+ 192.90277778,
1685
+ 192.90277778,
1686
+ 144.67708333,
1687
+ 144.67708333,
1688
+ 144.67708333,
1689
+ 144.67708333,
1690
+ 144.67708333,
1691
+ 144.67708333,
1692
+ 144.67708333,
1693
+ 144.67708333,
1694
+ 144.67708333,
1695
+ 144.67708333,
1696
+ 144.67708333,
1697
+ 144.67708333,
1698
+ 144.67708333,
1699
+ 144.67708333,
1700
+ 144.67708333,
1701
+ 144.67708333,
1702
+ 115.74166667,
1703
+ 115.74166667,
1704
+ 115.74166667,
1705
+ 115.74166667,
1706
+ 115.74166667,
1707
+ 115.74166667,
1708
+ 115.74166667,
1709
+ 115.74166667,
1710
+ 115.74166667,
1711
+ 115.74166667,
1712
+ 115.74166667,
1713
+ 115.74166667,
1714
+ 115.74166667,
1715
+ 115.74166667,
1716
+ 115.74166667,
1717
+ 115.74166667,
1718
+ 115.74166667,
1719
+ 115.74166667,
1720
+ 115.74166667,
1721
+ 115.74166667,
1722
+ 115.74166667,
1723
+ 115.74166667,
1724
+ 115.74166667,
1725
+ 115.74166667,
1726
+ 115.74166667,
1727
+ 115.74166667,
1728
+ 115.74166667,
1729
+ 115.74166667,
1730
+ 115.74166667,
1731
+ 115.74166667,
1732
+ 115.74166667,
1733
+ 115.74166667,
1734
+ 115.74166667,
1735
+ 115.74166667,
1736
+ 115.74166667,
1737
+ 115.74166667,
1738
+ 115.74166667,
1739
+ 115.74166667,
1740
+ 115.74166667,
1741
+ 115.74166667,
1742
+ 96.45138889,
1743
+ 96.45138889,
1744
+ 96.45138889,
1745
+ 96.45138889,
1746
+ 96.45138889,
1747
+ 96.45138889,
1748
+ 96.45138889,
1749
+ 96.45138889,
1750
+ 96.45138889,
1751
+ 96.45138889,
1752
+ 96.45138889,
1753
+ 96.45138889,
1754
+ 96.45138889,
1755
+ 96.45138889,
1756
+ 96.45138889,
1757
+ 96.45138889,
1758
+ 96.45138889,
1759
+ 96.45138889,
1760
+ 96.45138889,
1761
+ 96.45138889,
1762
+ 96.45138889,
1763
+ 96.45138889,
1764
+ 96.45138889,
1765
+ 96.45138889,
1766
+ 96.45138889,
1767
+ 96.45138889,
1768
+ 96.45138889,
1769
+ 96.45138889,
1770
+ 96.45138889,
1771
+ 96.45138889,
1772
+ 96.45138889,
1773
+ 96.45138889,
1774
+ 96.45138889,
1775
+ 96.45138889,
1776
+ 96.45138889,
1777
+ 96.45138889,
1778
+ 96.45138889,
1779
+ 96.45138889,
1780
+ 96.45138889,
1781
+ 96.45138889,
1782
+ 96.45138889,
1783
+ 96.45138889,
1784
+ 96.45138889,
1785
+ 96.45138889,
1786
+ 96.45138889,
1787
+ 96.45138889,
1788
+ 96.45138889,
1789
+ 96.45138889,
1662
1790
  ],
1663
1791
  1: [
1664
- 578.7083,
1665
- 578.7083,
1666
- 578.7083,
1667
- 578.7083,
1668
- 289.35416,
1669
- 289.35416,
1670
- 289.35416,
1671
- 289.35416,
1672
- 289.35416,
1673
- 289.35416,
1674
- 289.35416,
1675
- 289.35416,
1676
- 192.90277,
1677
- 192.90277,
1678
- 192.90277,
1679
- 192.90277,
1680
- 192.90277,
1681
- 192.90277,
1682
- 192.90277,
1683
- 192.90277,
1684
- 192.90277,
1685
- 192.90277,
1686
- 192.90277,
1687
- 192.90277,
1688
- 144.67708,
1689
- 144.67708,
1690
- 144.67708,
1691
- 144.67708,
1692
- 144.67708,
1693
- 144.67708,
1694
- 144.67708,
1695
- 144.67708,
1696
- 144.67708,
1697
- 144.67708,
1698
- 144.67708,
1699
- 144.67708,
1700
- 144.67708,
1701
- 144.67708,
1702
- 144.67708,
1703
- 144.67708,
1704
- 115.74167,
1705
- 115.74167,
1706
- 115.74167,
1707
- 115.74167,
1708
- 115.74167,
1709
- 115.74167,
1710
- 115.74167,
1711
- 115.74167,
1712
- 115.74167,
1713
- 115.74167,
1714
- 115.74167,
1715
- 115.74167,
1716
- 115.74167,
1717
- 115.74167,
1718
- 115.74167,
1719
- 115.74167,
1720
- 115.74167,
1721
- 115.74167,
1722
- 115.74167,
1723
- 115.74167,
1724
- 115.74167,
1725
- 115.74167,
1726
- 115.74167,
1727
- 115.74167,
1728
- 115.74167,
1729
- 115.74167,
1730
- 115.74167,
1731
- 115.74167,
1732
- 115.74167,
1733
- 115.74167,
1734
- 115.74167,
1735
- 115.74167,
1736
- 115.74167,
1737
- 115.74167,
1738
- 115.74167,
1739
- 115.74167,
1740
- 115.74167,
1741
- 115.74167,
1742
- 115.74167,
1743
- 115.74167,
1744
- 95.69444,
1745
- 95.69444,
1746
- 95.69444,
1747
- 95.69444,
1748
- 95.69444,
1749
- 95.69444,
1750
- 95.69444,
1751
- 95.69444,
1752
- 95.69444,
1753
- 95.69444,
1754
- 95.69444,
1755
- 95.69444,
1756
- 95.69444,
1757
- 95.69444,
1758
- 95.69444,
1759
- 95.69444,
1760
- 95.69444,
1761
- 95.69444,
1762
- 95.69444,
1763
- 95.69444,
1764
- 95.69444,
1765
- 95.69444,
1766
- 95.69444,
1767
- 95.69444,
1768
- 95.69444,
1769
- 95.69444,
1770
- 95.69444,
1771
- 95.69444,
1772
- 95.69444,
1773
- 95.69444,
1774
- 95.69444,
1775
- 95.69444,
1776
- 95.69444,
1777
- 95.69444,
1778
- 95.69444,
1779
- 95.69444,
1780
- 95.69444,
1781
- 95.69444,
1782
- 95.69444,
1783
- 95.69444,
1784
- 95.69444,
1785
- 95.69444,
1786
- 95.69444,
1787
- 95.69444,
1788
- 95.69444,
1789
- 95.69444,
1790
- 95.69444,
1791
- 95.69444,
1792
+ 578.70833333,
1793
+ 578.70833333,
1794
+ 578.70833333,
1795
+ 578.70833333,
1796
+ 289.35416667,
1797
+ 289.35416667,
1798
+ 289.35416667,
1799
+ 289.35416667,
1800
+ 289.35416667,
1801
+ 289.35416667,
1802
+ 289.35416667,
1803
+ 289.35416667,
1804
+ 192.90277778,
1805
+ 192.90277778,
1806
+ 192.90277778,
1807
+ 192.90277778,
1808
+ 192.90277778,
1809
+ 192.90277778,
1810
+ 192.90277778,
1811
+ 192.90277778,
1812
+ 192.90277778,
1813
+ 192.90277778,
1814
+ 192.90277778,
1815
+ 192.90277778,
1816
+ 144.67708333,
1817
+ 144.67708333,
1818
+ 144.67708333,
1819
+ 144.67708333,
1820
+ 144.67708333,
1821
+ 144.67708333,
1822
+ 144.67708333,
1823
+ 144.67708333,
1824
+ 144.67708333,
1825
+ 144.67708333,
1826
+ 144.67708333,
1827
+ 144.67708333,
1828
+ 144.67708333,
1829
+ 144.67708333,
1830
+ 144.67708333,
1831
+ 144.67708333,
1832
+ 115.74166667,
1833
+ 115.74166667,
1834
+ 115.74166667,
1835
+ 115.74166667,
1836
+ 115.74166667,
1837
+ 115.74166667,
1838
+ 115.74166667,
1839
+ 115.74166667,
1840
+ 115.74166667,
1841
+ 115.74166667,
1842
+ 115.74166667,
1843
+ 115.74166667,
1844
+ 115.74166667,
1845
+ 115.74166667,
1846
+ 115.74166667,
1847
+ 115.74166667,
1848
+ 115.74166667,
1849
+ 115.74166667,
1850
+ 115.74166667,
1851
+ 115.74166667,
1852
+ 115.74166667,
1853
+ 115.74166667,
1854
+ 115.74166667,
1855
+ 115.74166667,
1856
+ 115.74166667,
1857
+ 115.74166667,
1858
+ 115.74166667,
1859
+ 115.74166667,
1860
+ 115.74166667,
1861
+ 115.74166667,
1862
+ 115.74166667,
1863
+ 115.74166667,
1864
+ 115.74166667,
1865
+ 115.74166667,
1866
+ 115.74166667,
1867
+ 115.74166667,
1868
+ 115.74166667,
1869
+ 115.74166667,
1870
+ 115.74166667,
1871
+ 115.74166667,
1872
+ 96.45138889,
1873
+ 96.45138889,
1874
+ 96.45138889,
1875
+ 96.45138889,
1876
+ 96.45138889,
1877
+ 96.45138889,
1878
+ 96.45138889,
1879
+ 96.45138889,
1880
+ 96.45138889,
1881
+ 96.45138889,
1882
+ 96.45138889,
1883
+ 96.45138889,
1884
+ 96.45138889,
1885
+ 96.45138889,
1886
+ 96.45138889,
1887
+ 96.45138889,
1888
+ 96.45138889,
1889
+ 96.45138889,
1890
+ 96.45138889,
1891
+ 96.45138889,
1892
+ 96.45138889,
1893
+ 96.45138889,
1894
+ 96.45138889,
1895
+ 96.45138889,
1896
+ 96.45138889,
1897
+ 96.45138889,
1898
+ 96.45138889,
1899
+ 96.45138889,
1900
+ 96.45138889,
1901
+ 96.45138889,
1902
+ 96.45138889,
1903
+ 96.45138889,
1904
+ 96.45138889,
1905
+ 96.45138889,
1906
+ 96.45138889,
1907
+ 96.45138889,
1908
+ 96.45138889,
1909
+ 96.45138889,
1910
+ 96.45138889,
1911
+ 96.45138889,
1912
+ 96.45138889,
1913
+ 96.45138889,
1914
+ 96.45138889,
1915
+ 96.45138889,
1916
+ 96.45138889,
1917
+ 96.45138889,
1918
+ 96.45138889,
1919
+ 96.45138889,
1792
1920
  ],
1793
1921
  2: [
1794
- 578.7083,
1795
- 578.7083,
1796
- 578.7083,
1797
- 578.7083,
1798
- 289.35416,
1799
- 289.35416,
1800
- 289.35416,
1801
- 289.35416,
1802
- 289.35416,
1803
- 289.35416,
1804
- 289.35416,
1805
- 289.35416,
1806
- 192.90277,
1807
- 192.90277,
1808
- 192.90277,
1809
- 192.90277,
1810
- 192.90277,
1811
- 192.90277,
1812
- 192.90277,
1813
- 192.90277,
1814
- 192.90277,
1815
- 192.90277,
1816
- 192.90277,
1817
- 192.90277,
1818
- 144.67708,
1819
- 144.67708,
1820
- 144.67708,
1821
- 144.67708,
1822
- 144.67708,
1823
- 144.67708,
1824
- 144.67708,
1825
- 144.67708,
1826
- 144.67708,
1827
- 144.67708,
1828
- 144.67708,
1829
- 144.67708,
1830
- 144.67708,
1831
- 144.67708,
1832
- 144.67708,
1833
- 144.67708,
1834
- 115.74167,
1835
- 115.74167,
1836
- 115.74167,
1837
- 115.74167,
1838
- 115.74167,
1839
- 115.74167,
1840
- 115.74167,
1841
- 115.74167,
1842
- 115.74167,
1843
- 115.74167,
1844
- 115.74167,
1845
- 115.74167,
1846
- 115.74167,
1847
- 115.74167,
1848
- 115.74167,
1849
- 115.74167,
1850
- 115.74167,
1851
- 115.74167,
1852
- 115.74167,
1853
- 115.74167,
1854
- 115.74167,
1855
- 115.74167,
1856
- 115.74167,
1857
- 115.74167,
1858
- 115.74167,
1859
- 115.74167,
1860
- 115.74167,
1861
- 115.74167,
1862
- 115.74167,
1863
- 115.74167,
1864
- 115.74167,
1865
- 115.74167,
1866
- 115.74167,
1867
- 115.74167,
1868
- 115.74167,
1869
- 115.74167,
1870
- 115.74167,
1871
- 115.74167,
1872
- 115.74167,
1873
- 115.74167,
1874
- 95.69444,
1875
- 95.69444,
1876
- 95.69444,
1877
- 95.69444,
1878
- 95.69444,
1879
- 95.69444,
1880
- 95.69444,
1881
- 95.69444,
1882
- 95.69444,
1883
- 95.69444,
1884
- 95.69444,
1885
- 95.69444,
1886
- 95.69444,
1887
- 95.69444,
1888
- 95.69444,
1889
- 95.69444,
1890
- 95.69444,
1891
- 95.69444,
1892
- 95.69444,
1893
- 95.69444,
1894
- 95.69444,
1895
- 95.69444,
1896
- 95.69444,
1897
- 95.69444,
1898
- 95.69444,
1899
- 95.69444,
1900
- 95.69444,
1901
- 95.69444,
1902
- 95.69444,
1903
- 95.69444,
1904
- 95.69444,
1905
- 95.69444,
1906
- 95.69444,
1907
- 95.69444,
1908
- 95.69444,
1909
- 95.69444,
1910
- 95.69444,
1911
- 95.69444,
1912
- 95.69444,
1913
- 95.69444,
1914
- 95.69444,
1915
- 95.69444,
1916
- 95.69444,
1917
- 95.69444,
1918
- 95.69444,
1919
- 95.69444,
1920
- 95.69444,
1921
- 95.69444,
1922
+ 578.70833333,
1923
+ 578.70833333,
1924
+ 578.70833333,
1925
+ 578.70833333,
1926
+ 289.35416667,
1927
+ 289.35416667,
1928
+ 289.35416667,
1929
+ 289.35416667,
1930
+ 289.35416667,
1931
+ 289.35416667,
1932
+ 289.35416667,
1933
+ 289.35416667,
1934
+ 192.90277778,
1935
+ 192.90277778,
1936
+ 192.90277778,
1937
+ 192.90277778,
1938
+ 192.90277778,
1939
+ 192.90277778,
1940
+ 192.90277778,
1941
+ 192.90277778,
1942
+ 192.90277778,
1943
+ 192.90277778,
1944
+ 192.90277778,
1945
+ 192.90277778,
1946
+ 144.67708333,
1947
+ 144.67708333,
1948
+ 144.67708333,
1949
+ 144.67708333,
1950
+ 144.67708333,
1951
+ 144.67708333,
1952
+ 144.67708333,
1953
+ 144.67708333,
1954
+ 144.67708333,
1955
+ 144.67708333,
1956
+ 144.67708333,
1957
+ 144.67708333,
1958
+ 144.67708333,
1959
+ 144.67708333,
1960
+ 144.67708333,
1961
+ 144.67708333,
1962
+ 115.74166667,
1963
+ 115.74166667,
1964
+ 115.74166667,
1965
+ 115.74166667,
1966
+ 115.74166667,
1967
+ 115.74166667,
1968
+ 115.74166667,
1969
+ 115.74166667,
1970
+ 115.74166667,
1971
+ 115.74166667,
1972
+ 115.74166667,
1973
+ 115.74166667,
1974
+ 115.74166667,
1975
+ 115.74166667,
1976
+ 115.74166667,
1977
+ 115.74166667,
1978
+ 115.74166667,
1979
+ 115.74166667,
1980
+ 115.74166667,
1981
+ 115.74166667,
1982
+ 115.74166667,
1983
+ 115.74166667,
1984
+ 115.74166667,
1985
+ 115.74166667,
1986
+ 115.74166667,
1987
+ 115.74166667,
1988
+ 115.74166667,
1989
+ 115.74166667,
1990
+ 115.74166667,
1991
+ 115.74166667,
1992
+ 115.74166667,
1993
+ 115.74166667,
1994
+ 115.74166667,
1995
+ 115.74166667,
1996
+ 115.74166667,
1997
+ 115.74166667,
1998
+ 115.74166667,
1999
+ 115.74166667,
2000
+ 115.74166667,
2001
+ 115.74166667,
2002
+ 96.45138889,
2003
+ 96.45138889,
2004
+ 96.45138889,
2005
+ 96.45138889,
2006
+ 96.45138889,
2007
+ 96.45138889,
2008
+ 96.45138889,
2009
+ 96.45138889,
2010
+ 96.45138889,
2011
+ 96.45138889,
2012
+ 96.45138889,
2013
+ 96.45138889,
2014
+ 96.45138889,
2015
+ 96.45138889,
2016
+ 96.45138889,
2017
+ 96.45138889,
2018
+ 96.45138889,
2019
+ 96.45138889,
2020
+ 96.45138889,
2021
+ 96.45138889,
2022
+ 96.45138889,
2023
+ 96.45138889,
2024
+ 96.45138889,
2025
+ 96.45138889,
2026
+ 96.45138889,
2027
+ 96.45138889,
2028
+ 96.45138889,
2029
+ 96.45138889,
2030
+ 96.45138889,
2031
+ 96.45138889,
2032
+ 96.45138889,
2033
+ 96.45138889,
2034
+ 96.45138889,
2035
+ 96.45138889,
2036
+ 96.45138889,
2037
+ 96.45138889,
2038
+ 96.45138889,
2039
+ 96.45138889,
2040
+ 96.45138889,
2041
+ 96.45138889,
2042
+ 96.45138889,
2043
+ 96.45138889,
2044
+ 96.45138889,
2045
+ 96.45138889,
2046
+ 96.45138889,
2047
+ 96.45138889,
2048
+ 96.45138889,
2049
+ 96.45138889,
1922
2050
  ],
1923
2051
  3: [
1924
- 578.7083,
1925
- 578.7083,
1926
- 578.7083,
1927
- 578.7083,
1928
- 289.35416,
1929
- 289.35416,
1930
- 289.35416,
1931
- 289.35416,
1932
- 289.35416,
1933
- 289.35416,
1934
- 289.35416,
1935
- 289.35416,
1936
- 192.90277,
1937
- 192.90277,
1938
- 192.90277,
1939
- 192.90277,
1940
- 192.90277,
1941
- 192.90277,
1942
- 192.90277,
1943
- 192.90277,
1944
- 192.90277,
1945
- 192.90277,
1946
- 192.90277,
1947
- 192.90277,
1948
- 144.67708,
1949
- 144.67708,
1950
- 144.67708,
1951
- 144.67708,
1952
- 144.67708,
1953
- 144.67708,
1954
- 144.67708,
1955
- 144.67708,
1956
- 144.67708,
1957
- 144.67708,
1958
- 144.67708,
1959
- 144.67708,
1960
- 144.67708,
1961
- 144.67708,
1962
- 144.67708,
1963
- 144.67708,
1964
- 115.74167,
1965
- 115.74167,
1966
- 115.74167,
1967
- 115.74167,
1968
- 115.74167,
1969
- 115.74167,
1970
- 115.74167,
1971
- 115.74167,
1972
- 115.74167,
1973
- 115.74167,
1974
- 115.74167,
1975
- 115.74167,
1976
- 115.74167,
1977
- 115.74167,
1978
- 115.74167,
1979
- 115.74167,
1980
- 115.74167,
1981
- 115.74167,
1982
- 115.74167,
1983
- 115.74167,
1984
- 115.74167,
1985
- 115.74167,
1986
- 115.74167,
1987
- 115.74167,
1988
- 115.74167,
1989
- 115.74167,
1990
- 115.74167,
1991
- 115.74167,
1992
- 115.74167,
1993
- 115.74167,
1994
- 115.74167,
1995
- 115.74167,
1996
- 115.74167,
1997
- 115.74167,
1998
- 115.74167,
1999
- 115.74167,
2000
- 115.74167,
2001
- 115.74167,
2002
- 115.74167,
2003
- 115.74167,
2004
- 95.69444,
2005
- 95.69444,
2006
- 95.69444,
2007
- 95.69444,
2008
- 95.69444,
2009
- 95.69444,
2010
- 95.69444,
2011
- 95.69444,
2012
- 95.69444,
2013
- 95.69444,
2014
- 95.69444,
2015
- 95.69444,
2016
- 95.69444,
2017
- 95.69444,
2018
- 95.69444,
2019
- 95.69444,
2020
- 95.69444,
2021
- 95.69444,
2022
- 95.69444,
2023
- 95.69444,
2024
- 95.69444,
2025
- 95.69444,
2026
- 95.69444,
2027
- 95.69444,
2028
- 95.69444,
2029
- 95.69444,
2030
- 95.69444,
2031
- 95.69444,
2032
- 95.69444,
2033
- 95.69444,
2034
- 95.69444,
2035
- 95.69444,
2036
- 95.69444,
2037
- 95.69444,
2038
- 95.69444,
2039
- 95.69444,
2040
- 95.69444,
2041
- 95.69444,
2042
- 95.69444,
2043
- 95.69444,
2044
- 95.69444,
2045
- 95.69444,
2046
- 95.69444,
2047
- 95.69444,
2048
- 95.69444,
2049
- 95.69444,
2050
- 95.69444,
2051
- 95.69444,
2052
+ 578.70833333,
2053
+ 578.70833333,
2054
+ 578.70833333,
2055
+ 578.70833333,
2056
+ 289.35416667,
2057
+ 289.35416667,
2058
+ 289.35416667,
2059
+ 289.35416667,
2060
+ 289.35416667,
2061
+ 289.35416667,
2062
+ 289.35416667,
2063
+ 289.35416667,
2064
+ 192.90277778,
2065
+ 192.90277778,
2066
+ 192.90277778,
2067
+ 192.90277778,
2068
+ 192.90277778,
2069
+ 192.90277778,
2070
+ 192.90277778,
2071
+ 192.90277778,
2072
+ 192.90277778,
2073
+ 192.90277778,
2074
+ 192.90277778,
2075
+ 192.90277778,
2076
+ 144.67708333,
2077
+ 144.67708333,
2078
+ 144.67708333,
2079
+ 144.67708333,
2080
+ 144.67708333,
2081
+ 144.67708333,
2082
+ 144.67708333,
2083
+ 144.67708333,
2084
+ 144.67708333,
2085
+ 144.67708333,
2086
+ 144.67708333,
2087
+ 144.67708333,
2088
+ 144.67708333,
2089
+ 144.67708333,
2090
+ 144.67708333,
2091
+ 144.67708333,
2092
+ 115.74166667,
2093
+ 115.74166667,
2094
+ 115.74166667,
2095
+ 115.74166667,
2096
+ 115.74166667,
2097
+ 115.74166667,
2098
+ 115.74166667,
2099
+ 115.74166667,
2100
+ 115.74166667,
2101
+ 115.74166667,
2102
+ 115.74166667,
2103
+ 115.74166667,
2104
+ 115.74166667,
2105
+ 115.74166667,
2106
+ 115.74166667,
2107
+ 115.74166667,
2108
+ 115.74166667,
2109
+ 115.74166667,
2110
+ 115.74166667,
2111
+ 115.74166667,
2112
+ 115.74166667,
2113
+ 115.74166667,
2114
+ 115.74166667,
2115
+ 115.74166667,
2116
+ 115.74166667,
2117
+ 115.74166667,
2118
+ 115.74166667,
2119
+ 115.74166667,
2120
+ 115.74166667,
2121
+ 115.74166667,
2122
+ 115.74166667,
2123
+ 115.74166667,
2124
+ 115.74166667,
2125
+ 115.74166667,
2126
+ 115.74166667,
2127
+ 115.74166667,
2128
+ 115.74166667,
2129
+ 115.74166667,
2130
+ 115.74166667,
2131
+ 115.74166667,
2132
+ 96.45138889,
2133
+ 96.45138889,
2134
+ 96.45138889,
2135
+ 96.45138889,
2136
+ 96.45138889,
2137
+ 96.45138889,
2138
+ 96.45138889,
2139
+ 96.45138889,
2140
+ 96.45138889,
2141
+ 96.45138889,
2142
+ 96.45138889,
2143
+ 96.45138889,
2144
+ 96.45138889,
2145
+ 96.45138889,
2146
+ 96.45138889,
2147
+ 96.45138889,
2148
+ 96.45138889,
2149
+ 96.45138889,
2150
+ 96.45138889,
2151
+ 96.45138889,
2152
+ 96.45138889,
2153
+ 96.45138889,
2154
+ 96.45138889,
2155
+ 96.45138889,
2156
+ 96.45138889,
2157
+ 96.45138889,
2158
+ 96.45138889,
2159
+ 96.45138889,
2160
+ 96.45138889,
2161
+ 96.45138889,
2162
+ 96.45138889,
2163
+ 96.45138889,
2164
+ 96.45138889,
2165
+ 96.45138889,
2166
+ 96.45138889,
2167
+ 96.45138889,
2168
+ 96.45138889,
2169
+ 96.45138889,
2170
+ 96.45138889,
2171
+ 96.45138889,
2172
+ 96.45138889,
2173
+ 96.45138889,
2174
+ 96.45138889,
2175
+ 96.45138889,
2176
+ 96.45138889,
2177
+ 96.45138889,
2178
+ 96.45138889,
2179
+ 96.45138889,
2052
2180
  ],
2053
2181
  }