void addLeaf(@NotNull VirtualFilePointerImpl pointer) {
    Object leaves = this.leaves;
    Object newLeaves;
    if (leaves == null) {
      newLeaves = pointer;
    }
    else if (leaves instanceof VirtualFilePointerImpl) {
      newLeaves = new VirtualFilePointerImpl[]{(VirtualFilePointerImpl)leaves, pointer};
    }
    else {
      newLeaves = ArrayUtil.append((VirtualFilePointerImpl[])leaves, pointer);
    }
    associate(newLeaves);
  }
void addLeaf(@NotNull VirtualFilePointerImpl pointer)