List submitSubL(String text) throws Exception {
    ex = null;
    Object result = null;
    try {
      worker = new DefaultSubLWorkerSynch("(multiple-value-list " + text + ")", cycAccess, timeoutMsecs);
      result = worker.getWork();
    } catch (IOException iOException) {
      ex = iOException;
    } catch (TimeOutException timeOutException) {
      ex = timeOutException;
    } catch (CycApiException cycApiException) {
      ex = cycApiException;
    } catch (OpenCycTaskInterruptedException openCycTaskInterruptedException) {
      ex = openCycTaskInterruptedException;
    } catch (RuntimeException e) {
      ex = e;
    } catch (Exception e) {
      ex = e;
    } catch (Throwable t) {
      System.out.println(t);
    }
    if (ex == null) {
      if (result instanceof List) {
      return (List) result;
      } else {
        final Object[] results = {result};
        return Arrays.asList(results);
      }
    } else {
      throw ex;
    }
  }