<s> """<STR_LIT>""" <EOL> import benchexec . util as util <EOL> import benchexec . tools . template <EOL> import benchexec . result as result <EOL> import os <EOL> class Tool ( benchexec . tools . template . BaseTool ) : <EOL> """<STR_LIT>""" <EOL> BINS = [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] <EOL> def executable ( self ) : <EOL> """<STR_LIT>""" <EOL> return util . find_executable ( self . BINS [ <NUM_LIT:0> ] ) <EOL> def version ( self , executable ) : <EOL> return "<STR_LIT>" <EOL> def name ( self ) : <EOL> """<STR_LIT>""" <EOL> return '<STR_LIT>' <EOL> def cmdline ( self , executable , options , tasks , propertyfile = None , rlimits = { } ) : <EOL> """<STR_LIT>""" <EOL> directory = os . path . dirname ( executable ) <EOL> return [ os . path . join ( '<STR_LIT:.>' , directory , self . BINS [ <NUM_LIT:1> ] ) , directory ] + options + tasks <EOL> def determine_result ( self , returncode , returnsignal , output , isTimeout ) : <EOL> """<STR_LIT>""" <EOL> join_output = '<STR_LIT:\n>' . join ( output ) <EOL> if isTimeout : <EOL> return '<STR_LIT>' <EOL> if returncode == <NUM_LIT:2> : <EOL> return '<STR_LIT>' <EOL> if join_output is None : <EOL> return '<STR_LIT>' <EOL> elif '<STR_LIT>' in join_output : <EOL> return result . RESULT_TRUE_PROP <EOL> elif '<STR_LIT>' in join_output : <EOL> return result . RESULT_FALSE_REACH <EOL> else : <EOL> return result . RESULT_UNKNOWN <EOL> def program_files ( self , executable ) : <EOL> """<STR_LIT>""" <EOL> directory = os . path . dirname ( executable ) <EOL> return [ os . path . join ( '<STR_LIT:.>' , directory , f ) for f in self . BINS ] </s>
