docs: def valid_fits_key(key):
      """
      Makes valid key for a FITS header
  
      "The keyword names may be up to 8 characters long and can only contain
      uppercase letters A to Z, the digits 0 to 9, the hyphen, and the underscore
      character." (http://fits.gsfc.nasa.gov/fits_primer.html)
      """
  
      ret = re.sub("[^A-Z0-9\-_]", "", key.upper())[:8]
      if len(ret) == 0:
          raise RuntimeError("key '{0!s}' has no valid characters to be a key in a FITS header".format(key))
      return ret