question: public < E extends T > E min ( Iterable < E > iterable ) { Iterator < E > iterator = iterable . iterator ( ) ; E minSoFar = iterator . next ( ) ; while ( iterator . hasNext ( ) ) { minSoFar = min ( minSoFar , iterator . next ( ) ) ; } return minSoFar ; }
target:  Returns the smallest of the specified values according to this ordering. If there are multiple smallest values, the first of those is returned.