CMIS 241 Using the SearchArrayListTest and ArrayListofDates programs make a program that generates random dates, optionally displays them, does a user-specified number of (sequential) searches (using .contains()), sorts them, optionally displays them, does a user-specified number of binary searches. Report the number of hits and misses, the total time spent searching and the time per search, i.e. the same as the existing program. The binarySearch method of the Collections class can take a third parameter which is a comparator object so that it knows how to compare objects. This is similar to the comparator parameter passed to the Collections.sort method. Use the Date and DateComparator classes as is, do not change them. Don't use the DateComparatorJulian. Submit your one Java file. There's not much coding involved with this, as most of it is already in it the two test programs. Mostly it requires understanding of them in order to make the small changes.