docs: def query_ssos(self, target_name, lunation_count=None):
          """Send a query to the SSOS web service, looking for available observations using the given track.
  
          :param target_name: name of target to query against SSOIS db
          :param lunation_count: ignored
          :rtype: SSOSData
          """
  
          # we observe ~ a week either side of new moon
          # but we don't know when in the dark run the discovery happened
          # so be generous with the search boundaries, add extra 2 weeks
          # current date just has to be the night of the triplet,
          from mp_ephem import horizons
          search_start_date = Time('1999-01-01', scale='utc')
          search_end_date = Time(datetime.datetime.now().strftime('%Y-%m-%d'), scale='utc')
          logger.info("Sending query to SSOS start_date: {} end_data: {}\n".format(search_start_date, search_end_date))
          query = Query(target_name,
                        search_start_date=search_start_date,
                        search_end_date=search_end_date)
  
          logger.debug("Parsing query results...")
          tracks_data = self.ssos_parser.parse(query.get())
  
          tracks_data.mpc_observations = {}
  
          start_time = Time(search_start_date)
          stop_time = Time(search_end_date)
          step_size = 5 * units.hour
          self.orbit = horizons.Body(target_name, start_time, stop_time, step_size)
  
          ref_sky_coord = None
  
          for source in tracks_data.get_sources():
              astrom_observations = tracks_data.observations
              source_readings = source.get_readings()
              for idx in range(len(source_readings)):
                  source_reading = source_readings[idx]
                  assert isinstance(source_reading, SourceReading)
                  if ref_sky_coord is None or source_reading.sky_coord.separation(ref_sky_coord) > 40 * units.arcsec:
                      ref_sky_coord = source_reading.sky_coord
                  source_reading.reference_sky_coord = ref_sky_coord
                  astrom_observation = astrom_observations[idx]
                  self.orbit.predict(Time(astrom_observation.mjd, format='mjd', scale='utc'))
                  source_reading.pa = self.orbit.pa
                  # why are these being recorded just in pixels?  Because the error ellipse is drawn in pixels.
                  # TODO: Modify error ellipse drawing routine to use WCS but be sure
                  # that this does not cause trouble with the use of dra/ddec for cutout computer
                  source_reading.dx = self.orbit.dra
                  source_reading.dy = self.orbit.ddec
          logger.debug("Sending back set of observations that might contain the target: {}".format(tracks_data))
          return tracks_data