### Question:
TrieMap implements Iterable<T> { public States<T> get(CharSequence seq) { if (seq.length() == 0) { return new States<>(new State<T>(false, null, null)); } return (root == null) ? new States<>(new State<T>(false, null, null)) : root.get(seq, 0); }  void put(CharSequence seq, T value); Iterator<T> iterator(); void putPrefix(CharSequence seq, T value); States<T> get(CharSequence seq); States<T> get(CharSequence seq, State<T> stateInfo);  }### Answer:
@Test public void testThatEmptyMapAlwaysReturnsUnknownState() { TrieMap<Integer> map = new TrieMap<>(); State<Integer> state = map.get("abc").getStateForCompleteSequence(); assertNotNull(state); assertFalse(state.isKnown()); assertFalse(state.isFinal()); assertEquals(-1, state.getIndex()); }