@Override
 public ITreeCursor openCursor() {
   if (openCursors == null) {
     openCursors = new ArrayList<>(4);
   }
   final ITreeCursorMutable result =
       new TreeCursorMutable(this, new PatriciaTraverser(this, root), root.hasValue());
   openCursors.add(result);
   return result;
 }
 @Override
 public void cursorClosed(@NotNull ITreeCursorMutable cursor) {
   openCursors.remove(cursor);
 }