code: def complete_classname(classname):
      
  
      result = javabridge.get_collection_wrapper(
          javabridge.static_call(
              "Lweka/Run;", "findSchemeMatch",
              "(Ljava/lang/String;Z)Ljava/util/List;",
              classname, True))
      if len(result) == 1:
          return str(result[0])
      elif len(result) == 0:
          raise Exception("No classname matches found for: " + classname)
      else:
          matches = []
          for i in range(len(result)):
              matches.append(str(result[i]))
          raise Exception("Found multiple matches for '" + classname + "':\n" + '\n'.join(matches))
docs: Attempts to complete a partial classname like '.J48' and returns the full
      classname if a single match was found, otherwise an exception is raised.
  
      :param classname: the partial classname to expand
      :type classname: str
      :return: the full classname
      :rtype: str