### Question:
Constructor implements TreeConstructor<E, MutableSettableNode<E>, MutableTreeImpl<E>> { @SafeVarargs @Override public final MutableTreeImpl<E> build(E e, MutableTreeImpl<E>... subtrees) { return new MutableTreeImpl<>(e, new FixedUncheckedSimpleCollection<>(subtrees)); }  @SafeVarargs @Override final MutableTreeImpl<E> build(E e, MutableTreeImpl<E>... subtrees); @Override Class<? extends Tree> forClass();  }### Answer:
@Test public void build() { final Constructor<String> constructor = new Constructor<>(); final MutableTree<String, MutableSettableNode<String>> tree = constructor.build("a"); assertEquals("a", tree.getRoot().getElement()); assertFalse(tree.isEmpty()); }