docs: def draw_uncertainty_ellipse(self, cutout):
          """
          Draws an ErrEllipse with the spcified dimensions.  Only one ErrEllipse can be drawn and
          only once (not movable).
          """
          if not self.mark_prediction:
              return
  
          try:
              colour = cutout.reading.from_input_file and 'b' or 'g'
              colour = cutout.reading.null_observation and 'c' or colour
              dash = cutout.reading.null_observation and 1 or 0
              sky_coord = cutout.reading.sky_coord
  
  
              # RA/DEC value of observation / prediction goes to X/Y  using PV keywords
              predict_ra = sky_coord.ra.to(units.degree)
              predict_dec = sky_coord.dec.to(units.degree)
              x, y, extno = cutout.world2pix(predict_ra, predict_dec, usepv=True)
  
              # The X/Y pixel values are then converted to RA/DEC without PV for use with DS9.
              ra, dec = cutout.pix2world(x, y, extno, usepv=False)
              uncertainty_ellipse = cutout.reading.uncertainty_ellipse
  
              self.current_displayable.place_ellipse((ra, dec), uncertainty_ellipse, colour=colour, dash=dash)
  
              # Also mark on the image where source is localted, not just the ellipse.
              try:
                  measured_ra = cutout.reading.mpc_observation.coordinate.ra.to(units.degree)
                  measured_dec = cutout.reading.mpc_observation.coordinate.dec.to(units.degree)
                  try:
                      print "{:5.2f} {:5.2f} || {:5.2f} {:5.2f} # {}".format((predict_ra - measured_ra).to('arcsec'),
                                                          (predict_dec - measured_dec).to('arcsec'),
                                                          cutout.reading.uncertainty_ellipse.a,
                                                          cutout.reading.uncertainty_ellipse.b,
                                                          cutout.reading.mpc_observation.to_string())
                  except Exception as ex:
                      print "Failed trying to write out the prevoiusly recorded measurement: {}".format(ex)
                      pass
                  # x, y, extno = cutout.world2pix(measured_ra, measured_dec, usepv=True)
                  # ra, dec = cutout.pix2world(x, y, extno, usepv=False)
  
              except Exception as ex:
                  # print "We had an error :{}".format(ex)
                  logging.debug(str(ex))
                  logging.debug("Failed to get x/y from previous observation, using prediction.")
                  hdulist_index = cutout.get_hdulist_idx(cutout.reading.get_ccd_num())
                  measured_ra, measured_dec = cutout.pix2world(cutout.pixel_x, cutout.pixel_y, hdulist_index, usepv=True)
                  colour = 'm'
  
              self.current_displayable.place_marker(measured_ra, measured_dec, radius=8, colour=colour)
          except Exception as ex:
              print "EXCEPTION while drawing the uncertainty ellipse, skipping.: {}".format(ex)
              logger.debug(type(ex))
              logger.debug(str(ex))