code: def getInstrParameter(self, value, header, keyword):
          
          if isinstance(value, str) and value in ['None', '', ' ', 'INDEF']:
              value = None
  
          if value and (keyword is not None and keyword.strip() != ''):
              exceptionMessage = "ERROR: Your input is ambiguous!  Please specify either a value or a keyword.\n  You specifed both " + str(value) + " and " + str(keyword)
              raise ValueError(exceptionMessage)
  
          elif value is not None and value != '':
              return self._averageFromList(value)
  
          elif keyword is not None and keyword.strip() != '':
              return self._averageFromHeader(header, keyword)
  
          else:
              return None
docs: This method gets a instrument parameter from a
              pair of task parameters: a value, and a header keyword.
  
              The default behavior is:
                - if the value and header keyword are given, raise an exception.
                - if the value is given, use it.
                - if the value is blank and the header keyword is given, use
                  the header keyword.
                - if both are blank, or if the header keyword is not
                  found, return None.