code: def determine_result(self, returncode, returnsignal, output, isTimeout):
          
          for line in reversed(output):
              if line.startswith('ERROR:'):
                  if 'timeout' in line.lower():
                      return "TIMEOUT"
                  else:
                      return "ERROR ({0})".format(returncode)
              elif line.startswith('TBF') and 'FALSE' in line:
                  return result.RESULT_FALSE_REACH
              elif line.startswith('TBF') and 'TRUE' in line:
                  return result.RESULT_TRUE_PROP
              elif line.startswith('TBF') and 'DONE' in line:
                  return result.RESULT_DONE
          return result.RESULT_UNKNOWN
docs: Parse the output of the tool and extract the verification result.
          This method always needs to be overridden.
          If the tool gave a result, this method needs to return one of the
          benchexec.result.RESULT_* strings.
          Otherwise an arbitrary string can be returned that will be shown to the user
          and should give some indication of the failure reason
          (e.g., "CRASH", "OUT_OF_MEMORY", etc.).