Given an array of strings, create a tree map whose keys are the string lengths and whose values are the sets of strings with the length given by the key. For example, given the array [I, like, Java], produce a map that maps 1 to the set containing "I" and 4 to the set containing "like" and "Java".

Complete the following file:

MapUtil.java

import java.util.Map; import java.util.TreeMap; public class MapUtil { /** Make a sorted map whose keys are the word lengths words and whose values are the sets of the words with the given lengths. The map and sets should be sorted. @param words an array of strings @return a map mapping strings to their lengths */ public Map<Integer, TreeSet<String>> makeMap(String[] words) { ... } }