@Override
  public void addAll(@NotNull VirtualFilePointerContainer that) {
    checkDisposed();
    dropCaches();

    addAll(Arrays.asList(that.getUrls()));

    List<VirtualFilePointer> jarDups = ContainerUtil.map(((VirtualFilePointerContainerImpl)that).myJarDirectories, this::duplicate);
    List<VirtualFilePointer> jarRecursiveDups = ContainerUtil.map(((VirtualFilePointerContainerImpl)that).myJarRecursiveDirectories, this::duplicate);
    myJarDirectories.addAllAbsent(jarDups);
    myJarRecursiveDirectories.addAllAbsent(jarRecursiveDups);
  }
@Override
  public void addAll(@NotNull VirtualFilePointerContainer that)