public PackagesViewModels2 (
			IPackageManagementSolution solution,
			IRegisteredPackageRepositories registeredPackageRepositories,
			IThreadSafePackageManagementEvents packageManagementEvents,
			IPackageActionRunner actionRunner,
			ITaskFactory taskFactory)
		{
			var packageViewModelFactory = new PackageViewModelFactory2 (solution, packageManagementEvents, actionRunner);
			var updatedPackageViewModelFactory = new UpdatedPackageViewModelFactory2 (packageViewModelFactory);
			var installedPackageViewModelFactory = new InstalledPackageViewModelFactory2 (packageViewModelFactory);

			IRecentPackageRepository recentPackageRepository = PackageManagementServices.RecentPackageRepository;
			AvailablePackagesViewModel = new AvailablePackagesViewModel2 (registeredPackageRepositories, recentPackageRepository, packageViewModelFactory, taskFactory);
			InstalledPackagesViewModel = new InstalledPackagesViewModel2 (solution, packageManagementEvents, registeredPackageRepositories, installedPackageViewModelFactory, taskFactory);
			UpdatedPackagesViewModel = new UpdatedPackagesViewModel2 (solution, registeredPackageRepositories, updatedPackageViewModelFactory, taskFactory);
			RecentPackagesViewModel = new RecentPackagesViewModel2 (packageManagementEvents, registeredPackageRepositories, packageViewModelFactory, taskFactory);
		}
		public UpdatedPackagesViewModel2 (
			IPackageManagementSolution solution,
			IRegisteredPackageRepositories registeredPackageRepositories,
			UpdatedPackageViewModelFactory2 packageViewModelFactory,
			ITaskFactory taskFactory)
			: base (
				registeredPackageRepositories,
				packageViewModelFactory,
				taskFactory)
		{
			this.selectedProjects = new PackageManagementSelectedProjects (solution);
			this.logger = packageViewModelFactory.Logger;
			this.packageManagementEvents = packageViewModelFactory.PackageManagementEvents;

			packageManagementEvents.ParentPackagesUpdated += PackagesUpdated;

			ShowPackageSources = true;
			ShowUpdateAllPackages = true;
			ShowPrerelease = true;
		}