Write a generic class Pair<A, B> (two private final fields, a constructor, getFirst() and getSecond()) and a single generic method
static <T extends Comparable<T>> Pair<T, T> minMax(List<T> items)
that returns a pair (minimum, maximum) of a list, or null for an empty list. Use compareTo only — no sorting, no Collections.min.
The program reads n followed by n integers, then m followed by m words, and uses the same minMax method for the List<Integer> and the List<String>. Output:
Input:
5
4 -3 12 0 7
3
pear apple fig
Output:
Numbers: min=-3 max=12
Words: min=apple max=pear
When a list is empty, print Numbers: empty or Words: empty. Words are compared with String.compareTo (so upper-case letters come before lower-case ones).