### Question:
ByteTrie implements ByteTrieIfc<T> { @Override public int size() { return size; } ByteTrie(); @Override boolean isEmpty(); @Override int size(); @Override int numberOfNodes(); @Override boolean add(byte[] value, T item); @Override ByteTrieNodeIfc<T> find(byte[] value); @Override void inorder(TaskMonitor monitor, Op<T> op); @Override List<SearchResult<Integer, T>> search(byte[] text, TaskMonitor monitor); @Override List<SearchResult<Address, T>> search(Memory memory, AddressSetView view,
			TaskMonitor monitor);  }### Answer:
@Test public void testSize() throws Exception { assertEquals("wrong size for empty", 0, trie.size()); add(trie, "foo", true); assertEquals("wrong size for add foo", 1, trie.size()); add(trie, "foo", false); assertEquals("wrong size for add foo (again)", 1, trie.size()); add(trie, "bar", true); assertEquals("wrong size for add bar", 2, trie.size()); add(trie, "", true); assertEquals("wrong size for add ''", 3, trie.size()); }