code: public static Result convert(final Object res) throws QConnectorException {
  		if (res == null) {
  			return new EmptyResult();
  		}
  		// table
  		if (res instanceof c.Flip) {
  			return new FlipResult("", (c.Flip) res);
  		}
  		// dict
  		if (res instanceof c.Dict) {
  			final c.Dict dict = (c.Dict) res;
  			if ((dict.x instanceof c.Flip) && (dict.y instanceof c.Flip)) {
  				final c.Flip key = (c.Flip) dict.x;
  				final c.Flip data = (c.Flip) dict.y;
  				return new FlipFlipResult("", key, data);
  			}
  		}
  		if (res instanceof Object[]) {
  			final Object[] oa = (Object[]) res;
  			if ((oa.length == 2) && (oa[0] instanceof String) && (oa[1] instanceof c.Flip)) {
  				final String table = (String) oa[0];
  				final c.Flip flip = (c.Flip) oa[1];
  				return new FlipResult(table, flip);
  			} else if ((oa.length == 3) && (oa[1] instanceof String) && (oa[2] instanceof c.Flip)) {
  				final String table = (String) oa[1];
  				final c.Flip flip = (c.Flip) oa[2];
  				return new FlipResult(table, flip);
  			} else {
  				return new ListResult<Object>(oa);
  			}
  		}
  		// list
  		if (res instanceof byte[]) {
  			return new ListResult<Byte>(ArrayUtils.toObject((byte[]) res));
  		}
docs: Converts an result from the kx c library to a QConnector Result.
  
  @param res Result from q
  @return Result
  @throws QConnectorException If the result type is not supported