code: def findWCSExtn(filename):
      
      rootname,extroot = fileutil.parseFilename(filename)
      extnum = None
      if extroot is None:
          fimg = fits.open(rootname, memmap=False)
          for i,extn in enumerate(fimg):
              if 'crval1' in extn.header:
                  refwcs = wcsutil.HSTWCS('{}[{}]'.format(rootname,i))
                  if refwcs.wcs.has_cd():
                      extnum = '{}'.format(i)
                      break
          fimg.close()
      else:
          try:
              refwcs = wcsutil.HSTWCS(filename)
              if refwcs.wcs.has_cd():
                  extnum = extroot
          except:
              extnum = None
  
      return extnum
docs: Return new filename with extension that points to an extension with a
          valid WCS.
  
          Returns
          =======
          extnum : str, None
              Value of extension name as a string either as provided by the user
              or based on the extension number for the first extension which
              contains a valid HSTWCS object.  Returns None if no extension can be
              found with a valid WCS.
  
          Notes
          =====
          The return value from this function can be used as input to
              create another HSTWCS with the syntax::
  
                  `HSTWCS('{}[{}]'.format(filename,extnum))