Implement a collection of free lists for variable-length strings, as described at the end of Section 4.1.2. For each such free list, you will need an access function to get it if it exists, and implement it if it does not. A major design consideration is how to organize the collection of free lists, which are distinguished by the length of the strings. Essentially, what is needed is a dictionary of free lists, organized by string lengths.