public List<?> invoke(Object[] varargs) throws IllegalArgumentException 
	{
		if (varargs == null)
		{
			if (this.parameters != null)
			{
				throw new IllegalArgumentException("Error: The argument is not expected to be null");
			}
		}
		else 
		{
			if (varargs.length != parameters.length)
			{
				throw new IllegalArgumentException
				    ("Error: The entered number of arguments: "
				    + varargs.length + " does not equal the expected number: "
				    + parameters.length);
			}
			for (int i = 0; i < parameters.length; i++)
			{
				if (!parameters[i].isInstance(varargs[i]))
				{
					throw new IllegalArgumentException("Error: The entered object of class: " + 
				        varargs[i].getClass() + " does not match the expected class: "
				        + parameters[i]);
				}
			}
		}
		return SASHandler.invoke(this, varargs);
	}