public static <T extends Comparable> Pair<T> max(T[]a){
        if(a.length==0 || a==null) return null;
        T max1 = a[0];
        T max2 = a[0];
        int i=0;
        for(; i<a.length;i++){
            if(max1.compareTo(a[i])<0)
                max1 = a[i];
            if((max2.compareTo(a[i])>0) && max2!=max1){
                max2 = a[i];
            }
        }
        return new Pair<T>(max1, max2);
    }