code: public static Timeout min(Timeout... timeouts)
  	{
  		Timeout min = null;
  
  		for (Timeout timeout : timeouts)
  		{
  			if (timeout != null)
  				if (min == null || min.getMilliseconds() > timeout.getMilliseconds())
  					min = timeout;
  		}
  
  		if (min != null)
  			return min;
  		else
  			throw new IllegalArgumentException("Must specify at least one non-null timeout!");
  	}
docs: Filter through a number of timeouts to find the one with the shortest period
  
  @param timeouts
  a list of timeouts (nulls are ignored)
  
  @return the timeout with the shortest period
  
  @throws IllegalArgumentException
  if no non-null timeouts are presented