docs: def _annotate_crossmatch_with_value_added_parameters(
              self,
              crossmatchDict,
              catalogueName,
              searchPara,
              search_name):
          """*annotate each crossmatch with physical parameters such are distances etc*
  
          **Key Arguments:**
              - ``crossmatchDict`` -- the crossmatch dictionary
              - ``catalogueName`` -- the name of the catalogue the crossmatch results from
              - ``searchPara`` -- the search parameters for this individual search as lifted from the search algorithm in the sherlock settings file
              - ``search_name`` -- the name of the search as given in the sherlock settings file
  
          **Return:**
              - ``crossmatchDict`` -- the annotated crossmatch dictionary
  
          .. todo ::
  
              - update key arguments values and definitions with defaults
              - update return values and definitions
              - update usage examples and text
              - update docstring text
              - check sublime snippet exists
              - clip any useful text to docs mindmap
              - regenerate the docs and check redendering of this docstring
          """
          self.log.debug(
              'starting the ``_annotate_crossmatch_with_value_added_parameters`` method')
  
          redshift = None
          z = None
          scale = None
          distance = None
          distance_modulus = None
          major_axis_arcsec = None
          direct_distance = None
          direct_distance_scale = None
          direct_distance_modulus = None
  
          # IF THERE'S A REDSHIFT, CALCULATE PHYSICAL PARAMETERS
          if 'z' in crossmatchDict:
              # THE CATALOGUE HAS A REDSHIFT COLUMN
              redshift = crossmatchDict['z']
          elif 'photoZ' in crossmatchDict:
              redshift = crossmatchDict['photoZ']
          if redshift and redshift > 0.0:
              # CALCULATE DISTANCE MODULUS, ETC
              c = converter(log=self.log)
              dists = c.redshift_to_distance(
                  z=redshift,
                  WM=0.3,
                  WV=0.7,
                  H0=70.0
              )
  
              if dists:
                  z = dists['z']
                  scale = dists["da_scale"]
                  distance = dists["dl_mpc"]
                  distance_modulus = dists["dmod"]
          # ADD MAJOR AXIS VALUE
          if "or within semi major axis" in searchPara and searchPara["or within semi major axis"] == True and "semiMajor" in crossmatchDict and crossmatchDict["semiMajor"]:
              major_axis_arcsec = crossmatchDict[
                  "semiMajor"] * self.colMaps[catalogueName]["semiMajorToArcsec"]
  
          if "semiMajor" in crossmatchDict:
              del crossmatchDict["semiMajor"]
          # ADD DISTANCE VALUES
          if "distance" in crossmatchDict and crossmatchDict["distance"]:
              direct_distance = crossmatchDict["distance"]
              direct_distance_scale = direct_distance / 206.264806
              direct_distance_modulus = 5 * \
                  math.log10(direct_distance * 1e6) - 5
          # crossmatchDict['z'] = z
          crossmatchDict['scale'] = scale
          crossmatchDict['distance'] = distance
          crossmatchDict['distance_modulus'] = distance_modulus
          crossmatchDict['major_axis_arcsec'] = major_axis_arcsec
          crossmatchDict['direct_distance'] = direct_distance
          crossmatchDict['direct_distance_scale'] = direct_distance_scale
          crossmatchDict['direct_distance_modulus'] = direct_distance_modulus
  
          crossmatchDict['catalogue_object_type'] = self.colMaps[
              catalogueName]["object_type"]
          crossmatchDict["search_name"] = search_name
          crossmatchDict["raDeg"] = crossmatchDict["ra"]
  
          crossmatchDict["decDeg"] = crossmatchDict["dec"]
          del crossmatchDict["ra"]
          del crossmatchDict["dec"]
          crossmatchDict["original_search_radius_arcsec"] = searchPara[
              "angular radius arcsec"]
  
          physical_separation_kpc = None
          # CALCULATE MOST ACCURATE PHYSICAL SEPARATION
          if crossmatchDict["direct_distance_scale"]:
              physical_separation_kpc = crossmatchDict[
                  "direct_distance_scale"] * crossmatchDict["separationArcsec"]
          elif crossmatchDict["scale"]:
              physical_separation_kpc = crossmatchDict[
                  "scale"] * crossmatchDict["separationArcsec"]
  
          crossmatchDict["physical_separation_kpc"] = physical_separation_kpc
  
          self.log.debug(
              'completed the ``_annotate_crossmatch_with_value_added_parameters`` method')
          return crossmatchDict