text: /*
  * This header is generated by classdump-dyld 1.0
  * on Wednesday, March 22, 2017 at 9:09:45 AM Mountain Standard Time
  * Operating System: Version 10.1 (Build 14U593)
  * Image Source: /System/Library/PrivateFrameworks/PhotoAnalysis.framework/Frameworks/PhotosGraph.framework/PhotosGraph
  * classdump-dyld is licensed under GPLv3, Copyright © 2013-2016 by Elias Limneos.
  */
  
  
  @protocol OS_dispatch_queue, OS_os_log;
  @class NSRecursiveLock, NSMutableSet, NSObject, NSMutableArray, NSURL, PGGraph, NSString, PIPipeline, PHPhotoLibrary, PGMemoryController;
  
  @interface PGManager : NSObject {
  
  	NSRecursiveLock* _updatesLock;
  	unsigned long long _updateCount;
  	/*^block*/id _updateCompletionHandler;
  	/*^block*/id _updateProgressHandler;
  	NSMutableSet* _updateInserts;
  	NSMutableSet* _updateDeletes;
  	NSMutableSet* _updateDeleteIDs;
  	NSObject*<OS_dispatch_queue> _updateQueue;
  	NSMutableArray* _prefetchCuratedKeyAssetsBlocks;
  	NSMutableArray* _prefetchCuratedAssetsBlocks;
  	NSObject*<OS_dispatch_queue> _curationPrefetchQueue;
  	NSURL* _cachedGraphPersistenceParentDirectoryURL;
  	NSObject*<OS_dispatch_queue> _graphAccessQueue;
  	unsigned long long _graphAccessRead;
  	unsigned long long _graphAccessWrite;
  	NSRecursiveLock* _graphAccessLock;
  	NSObject*<OS_dispatch_queue> _notificationQueue;
  	PGGraph* _graph;
  	NSString* _graphName;
  	PIPipeline* _pipeline;
  	NSObject*<OS_os_log> _loggingConnection;
  	PHPhotoLibrary* _photoLibrary;
  	unsigned long long _libraryAnalysisState;
  	PGMemoryController* _memoryController;
  	NSURL* _metadataSnapshotOutputPathURL;
  	NSObject*<OS_os_log> _memoriesLoggingConnection;
  	NSObject*<OS_os_log> _curationLoggingConnection;
  	NSObject*<OS_os_log> _relatedLoggingConnection;
  	NSObject*<OS_os_log> _ingestLoggingConnection;
  	NSObject*<OS_os_log> _graphLoggingConnection;
  
  }
  
  @property (readonly) double durationForExistingMemoriesOverlapCheck; 
  @property (readonly) unsigned long long numberOfExistingMemoriesToKeepForOverlapCheck; 
  @property (readonly) unsigned long long libraryAnalysisState; 
  @property (copy,readonly) NSString * graphName;                                                     //@synthesize graphName=_graphName - In the implementation block
  @property (retain,readonly) PIPipeline * pipeline;                                                  //@synthesize pipeline=_pipeline - In the implementation block
  @property (retain) PGGraph * graph;                                                                 //@synthesize graph=_graph - In the implementation block
  @property (assign) unsigned long long libraryAnalysisState;                                         //@synthesize libraryAnalysisState=_libraryAnalysisState - In the implementation block
  @property (readonly) PGMemoryController * memoryController;                                         //@synthesize memoryController=_memoryController - In the implementation block
  @property (nonatomic,readonly) NSObject*<OS_os_log> memoriesLoggingConnection;                      //@synthesize memoriesLoggingConnection=_memoriesLoggingConnection - In the implementation block
  @property (nonatomic,readonly) NSObject*<OS_os_log> curationLoggingConnection;                      //@synthesize curationLoggingConnection=_curationLoggingConnection - In the implementation block
  @property (nonatomic,readonly) NSObject*<OS_os_log> relatedLoggingConnection;                       //@synthesize relatedLoggingConnection=_relatedLoggingConnection - In the implementation block
  @property (nonatomic,readonly) NSObject*<OS_os_log> ingestLoggingConnection;                        //@synthesize ingestLoggingConnection=_ingestLoggingConnection - In the implementation block
  @property (nonatomic,readonly) NSObject*<OS_os_log> graphLoggingConnection;                         //@synthesize graphLoggingConnection=_graphLoggingConnection - In the implementation block
  @property (nonatomic,retain) PHPhotoLibrary * photoLibrary;                                         //@synthesize photoLibrary=_photoLibrary - In the implementation block
  @property (nonatomic,retain) NSURL * metadataSnapshotOutputPathURL;                                 //@synthesize metadataSnapshotOutputPathURL=_metadataSnapshotOutputPathURL - In the implementation block
  +(void)initialize;
  +(id)assetPropertySetsForCuration;
  +(id)stringFromPGPrecision:(unsigned long long)arg1 ;
  +(id)stringFromPGDuration:(unsigned long long)arg1 ;
  +(id)stringFromPGRelatedType:(unsigned long long)arg1 ;
  +(BOOL)clientIsPhotoAnalysis;
  +(id)_summaryClusteringForDuration:(unsigned long long)arg1 andPrecision:(unsigned long long)arg2 ;
  +(id)_assetsBeautifierForPrecision:(unsigned long long)arg1 ;
  +(unsigned long long)_maximumNumberOfItemsForDuration:(unsigned long long)arg1 withTotalNumberOfItems:(unsigned long long)arg2 ;
  +(unsigned long long)_minimumNumberOfItemsForDuration:(unsigned long long)arg1 withMaximumNumberOfItems:(unsigned long long)arg2 ;
  +(id)curatedAssetsForAssetCollections:(id)arg1 forPeopleNames:(id)arg2 duration:(unsigned long long)arg3 precision:(unsigned long long)arg4 ;
  +(id)representativeAssetsForAssetCollection:(id)arg1 ;
  +(id)matchingWeightToDictionary;
  -(void)dealloc;
  -(id)init;
  -(id)_dateFormatter;
  -(BOOL)isBusy;
  -(void)commonInit;
  -(void)_beginUpdates;
  -(PGGraph *)graph;
  -(void)setGraph:(PGGraph *)arg1 ;
  -(PHPhotoLibrary *)photoLibrary;
  -(id)initWithPhotoLibrary:(id)arg1 ;
  -(void)setPhotoLibrary:(PHPhotoLibrary *)arg1 ;
  -(double)neighborScoreForLocalDate:(id)arg1 ;
  -(id)curatedAssetsForAssetCollection:(id)arg1 duration:(unsigned long long)arg2 precision:(unsigned long long)arg3 includeAllFaces:(BOOL)arg4 ;
  -(PGMemoryController *)memoryController;
  -(id)createMemoriesWithOptions:(id)arg1 progress:(/*^block*/id)arg2 ;
  -(double)durationForExistingMemoriesOverlapCheck;
  -(unsigned long long)numberOfExistingMemoriesToKeepForOverlapCheck;
  -(id)memorySummaryOfYear:(long long)arg1 duration:(unsigned long long)arg2 ;
  -(id)bestOfPastMemoryFromLocalDate:(id)arg1 toLocalDate:(id)arg2 duration:(unsigned long long)arg3 ;
  -(id)dayInHistoryMemoryForLocalDate:(id)arg1 ;
  -(id)dayInHistoryMemoriesForLocalDate:(id)arg1 ;
  -(id)feelingLuckyMemoriesWithLowRequirements:(BOOL)arg1 ;
  -(id)sometimeInHistoryMemories;
  -(id)featuredPeopleMemoriesWithLowRequirements:(BOOL)arg1 ;
  -(id)nowMemoriesForLocalDate:(id)arg1 ;
  -(id)nearbyTodayMemoriesForLocalDate:(id)arg1 location:(id)arg2 ;
  -(id)liveMemoriesForLocalDate:(id)arg1 location:(id)arg2 peopleNames:(id)arg3 ;
  -(id)recentPastMemoriesForLocalDate:(id)arg1 ;
  -(id)upcomingFutureMemoriesForLocalDate:(id)arg1 ;
  -(id)socialGroupMemoriesForSocialGroupWithID:(long long)arg1 year:(long long)arg2 ;
  -(id)tripMemoriesWithLowRequirements:(BOOL)arg1 ;
  -(id)weekendMemoriesWithLowRequirements:(BOOL)arg1 ;
  -(id)specialEventMemoriesWithLowRequirements:(BOOL)arg1 ;
  -(id)peopleMemoriesForPeopleWithUUID:(id)arg1 year:(long long)arg2 ;
  -(void)performSynchronousConcurrentGraphReadUsingBlock:(/*^block*/id)arg1 ;
  -(id)_socialGroupsIdentifiersFromSocialGroupNodes:(id)arg1 shouldIncludeMeNode:(BOOL)arg2 ;
  -(id)sortedArrayForFaceCollectionIdentifiers:(id)arg1 ;
  -(id)allSocialGroupsForFaceCollectionIdentifier:(id)arg1 ;
  -(id)socialGroupsForFaceCollectionIdentifiers:(id)arg1 ;
  -(id)assetCollectionsForFaceCollectionIdentifiers:(id)arg1 ;
  -(id)assetIdentifiersForFaceCollectionIdentifiers:(id)arg1 ;
  -(NSObject*<OS_os_log>)graphLoggingConnection;
  -(void)matchFeatureVector:(id)arg1 options:(unsigned long long)arg2 completionBlock:(/*^block*/id)arg3 ;
  -(BOOL)isCelebratingHolidayEventInYear:(long long)arg1 forEventRule:(id)arg2 ;
  -(BOOL)isCelebratingHolidayEventInGeneralForEventRule:(id)arg1 ;
  -(id)allCitiesSortedByFrequency;
  -(id)surveySocialGroupsInfoDictionaries;
  -(id)momentsAndGraphScoresAboveGraphScoreThreshold:(double)arg1 ;
  -(void)startLibraryAnalysis:(/*^block*/id)arg1 keepExistingGraph:(BOOL)arg2 completionBlock:(/*^block*/id)arg3 ;
  -(NSObject*<OS_os_log>)ingestLoggingConnection;
  -(BOOL)isAssetFeederInteresting:(id)arg1 precision:(unsigned long long)arg2 ;
  -(double)contentScoreForAssetFeeder:(id)arg1 precision:(unsigned long long)arg2 ;
  -(NSObject*<OS_os_log>)memoriesLoggingConnection;
  -(BOOL)locationIsInSupersets:(id)arg1 ;
  -(id)allYears;
  -(BOOL)isLocationNearHomeOrWork:(id)arg1 ;
  -(id)allMomentIdentifiersWithMostRecentModificationDate:(out id*)arg1 ;
  -(id)allSocialGroupIDs;
  -(id)allYearsForSocialGroupWithID:(long long)arg1 ;
  -(id)nameForSocialGroupWithID:(long long)arg1 ;
  -(id)allPeopleNames;
  -(id)allYearsForPeopleWithName:(id)arg1 ;
  -(id)_bestAssetInAssets:(id)arg1 forReferencePeople:(id)arg2 ;
  -(double)graphScoreForMoment:(id)arg1 ;
  -(double)neighborScoreForMoment:(id)arg1 ;
  -(double)contentScoreForAssetCollection:(id)arg1 precision:(unsigned long long)arg2 ;
  -(id)keywordsForMoment:(id)arg1 relatedType:(unsigned long long)arg2 ;
  -(id)exportableDictionaryFromKeywords:(id)arg1 ;
  -(id)memoryDebugInformationWithMoments:(id)arg1 precision:(unsigned long long)arg2 ;
  -(id)_sanitizeGraphDataDictionaryForArchiving:(id)arg1 referencedMemory:(id)arg2 ;
  -(id)_extractDatesAndAssetCountsFromMemory:(id)arg1 ;
  -(id)_diagnosticSummaryInfoForMemory:(id)arg1 ;
  -(unsigned long long)medianValueFromUnsignedItegerArray:(id)arg1 ;
  -(id)_extractYearStatsFromOrderedCollectionFetchResults:(id)arg1 fetchOptions:(id)arg2 yearEntryKey:(id)arg3 numberOfYearsEntryKey:(id)arg4 ;
  -(id)_momentsStatisticsForCurrentPhotoLibrary;
  -(id)_collectionStatisticsForCurrentPhotoLibrary;
  -(id)_yearsStatisticsForCurrentPhotoLibrary;
  -(id)diagnosticsSummaryInfoOnExistingMemoriesForCurrentPhotoLibrary;
  -(id)libraryStatisticsForCurrentPhotoLibrary;
  -(id)_bestAssetsInAssets:(id)arg1 forReferencePeople:(id)arg2 ;
  -(void)completeCuratedAssets:(id)arg1 fromAssets:(id)arg2 forPeople:(id)arg3 duration:(unsigned long long)arg4 precision:(unsigned long long)arg5 nonRemovableAssets:(id)arg6 ;
  -(NSObject*<OS_os_log>)relatedLoggingConnection;
  -(void)_loadGraph;
  -(id)graphPersistenceParentDirectoryURL;
  -(BOOL)shouldInvalidatePersistentGraph;
  -(void)_invalidateTransientCaches;
  -(void)_invalidatePersistentCaches;
  -(id)graphPersistenceParentDirectoryCandidateURLs;
  -(id)processSubdirectoryName;
  -(void)performAsynchronousBarrierGraphWriteUsingBlock:(/*^block*/id)arg1 ;
  -(BOOL)hasPendingGraphAccess;
  -(BOOL)hasPendingUpdates;
  -(PIPipeline *)pipeline;
  -(void)performAsynchronousNotification:(/*^block*/id)arg1 ;
  -(void)waitUntilFinishedUsingBlock:(/*^block*/id)arg1 ;
  -(void)_waitGraphUntilFinishedUsingBlock:(/*^block*/id)arg1 ;
  -(void)_waitLibraryUpdateUntilFinishedUsingBlock:(/*^block*/id)arg1 ;
  -(void)_reloadGraph;
  -(id)initWithGraphName:(id)arg1 photoLibrary:(id)arg2 ;
  -(void)invalidateTransientCaches;
  -(void)invalidatePersistentCaches;
  -(void)matchWithVisualFormat:(id)arg1 elements:(id)arg2 usingBlock:(/*^block*/id)arg3 ;
  -(BOOL)saveGraphToURL:(id)arg1 ;
  -(NSString *)graphName;
  -(unsigned long long)libraryAnalysisState;
  -(void)setLibraryAnalysisState:(unsigned long long)arg1 ;
  -(NSURL *)metadataSnapshotOutputPathURL;
  -(void)setMetadataSnapshotOutputPathURL:(NSURL *)arg1 ;
  -(NSObject*<OS_os_log>)curationLoggingConnection;
  -(id)titleTupleForMoment:(id)arg1 format:(long long)arg2 error:(id*)arg3 ;
  -(id)titleTupleForAlbum:(id)arg1 format:(long long)arg2 error:(id*)arg3 ;
  -(id)titleTupleForMemory:(id)arg1 error:(id*)arg2 ;
  -(id)titleTupleForPersonIdentifiers:(id)arg1 format:(long long)arg2 error:(id*)arg3 ;
  -(id)titleTupleForMomentList:(id)arg1 format:(long long)arg2 error:(id*)arg3 ;
  -(id)titleTupleForAssetCollection:(id)arg1 format:(long long)arg2 error:(id*)arg3 ;
  -(BOOL)_shouldRebuildGraph:(id)arg1 ;
  -(id)momentsForLibraryAnalysisWithFetchOptions:(id)arg1 ;
  -(id)_libraryAnalysisOperationWithMomentInsertions:(id)arg1 momentsDeletions:(id)arg2 momentDeletionIDs:(id)arg3 ;
  -(void)updateGraphWithMomentInsertions:(id)arg1 momentsDeletions:(id)arg2 momentDeletionIDs:(id)arg3 keepExistingGraph:(BOOL)arg4 progressBlock:(/*^block*/id)arg5 completionBlock:(/*^block*/id)arg6 ;
  -(void)cancelLibraryAnalysis:(/*^block*/id)arg1 ;
  -(id)bestAssetForAssetFeeder:(id)arg1 referenceLocation:(id)arg2 referencePeople:(id)arg3 focusOnPeople:(BOOL)arg4 precision:(unsigned long long)arg5 ;
  -(id)bestAssetForAssetFeeder:(id)arg1 referenceLocation:(id)arg2 referencePeople:(id)arg3 focusOnPeople:(BOOL)arg4 precision:(unsigned long long)arg5 complete:(BOOL)arg6 ;
  -(id)_bestAssetInSummarizedAssets:(id)arg1 forReferencePeople:(id)arg2 ;
  -(id)bestAssetForAssetFeeder:(id)arg1 referenceAsset:(id)arg2 precision:(unsigned long long)arg3 ;
  -(id)curatedKeyAssetForAssetCollection:(id)arg1 referenceAsset:(id)arg2 precision:(unsigned long long)arg3 ;
  -(void)_removePrefetchBlock;
  -(BOOL)isAssetCollectionInteresting:(id)arg1 precision:(unsigned long long)arg2 ;
  -(id)bestAssetsForAssetFeeder:(id)arg1 duration:(unsigned long long)arg2 precision:(unsigned long long)arg3 includeAllFaces:(BOOL)arg4 ;
  -(double)contentScoreForAssets:(id)arg1 precision:(unsigned long long)arg2 ;
  -(BOOL)areAssetsInteresting:(id)arg1 minimumNumberOfCuratedAssets:(unsigned long long)arg2 duration:(unsigned long long)arg3 precision:(unsigned long long)arg4 ;
  -(unsigned long long)optimalDurationForAssetCollection:(id)arg1 duration:(unsigned long long)arg2 precision:(unsigned long long)arg3 options:(id)arg4 ;
  -(void)snapshotAssetCollectionWithGraphOptions:(id)arg1 assetCollection:(id)arg2 writeToURL:(id)arg3 completionBlock:(/*^block*/id)arg4 ;
  -(id)_locationForAsset:(id)arg1 fromNearbyAssetsInAssets:(id)arg2 ;
  -(id)curatedKeyAssetForAssetCollection:(id)arg1 referenceLocation:(id)arg2 referencePeople:(id)arg3 focusOnPeople:(BOOL)arg4 precision:(unsigned long long)arg5 complete:(BOOL)arg6 ;
  -(void)prefetchCuratedKeyAssetsForMoments:(id)arg1 forReferenceAsset:(id)arg2 precision:(unsigned long long)arg3 ;
  -(void)prefetchCuratedAssetsForMoments:(id)arg1 duration:(unsigned long long)arg2 precision:(unsigned long long)arg3 ;
  -(void)cancelAllCurationPrefetches;
  -(void)prefetchAreMomentsInteresting:(id)arg1 precision:(unsigned long long)arg2 ;
  -(id)curatedAssetsForAssetCollection:(id)arg1 duration:(unsigned long long)arg2 precision:(unsigned long long)arg3 referencePeople:(id)arg4 ;
  -(void)snapshotMomentAssetCollection:(id)arg1 writeToURL:(id)arg2 completionBlock:(/*^block*/id)arg3 ;
  -(id)_graphNodesForAsset:(id)arg1 forInvestigationFeeder:(id)arg2 ;
  -(id)_checkConsistencyOfGraph:(id)arg1 ;
  -(id)_stringDescriptionForSocialGroups:(id)arg1 ;
  -(id)_stringDescriptionForPeopleEvents;
  -(id)_stringDescriptionForSupersets:(id)arg1 ;
  -(id)_stringDescriptionForTripsAndWeekends:(id)arg1 withTripMemoryTitleType:(unsigned long long)arg2 ;
  -(id)_stringDescriptionForUrbanCities:(id)arg1 ;
  -(id)_stringDescriptionForInterestingCities:(id)arg1 ;
  -(id)_stringDescriptionForInterestingAreas:(id)arg1 ;
  -(id)relatedCollectionBetweenAsset:(id)arg1 andMoment:(id)arg2 relatedType:(unsigned long long)arg3 needsDebugInfo:(BOOL)arg4 ;
  -(id)keywordsForAsset:(id)arg1 relatedType:(unsigned long long)arg2 ;
  -(id)_debugInformationForRelated:(id)arg1 referenceKeywords:(id)arg2 andRelatedMoment:(id)arg3 relatedType:(unsigned long long)arg4 precision:(unsigned long long)arg5 ;
  -(id)relatedCollectionBetweenMoment:(id)arg1 andMoment:(id)arg2 relatedType:(unsigned long long)arg3 needsDebugInfo:(BOOL)arg4 ;
  -(id)memoriesRelatedDefaultSnapshotRootPath;
  -(id)_snapshotFilenameForLookupKey:(id)arg1 ;
  -(unsigned)identifierForMoment:(id)arg1 ;
  -(id)memoryFootprintDescription;
  -(id)relatedDebugInformationBetweenAsset:(id)arg1 andRelatedMoment:(id)arg2 relatedType:(unsigned long long)arg3 precision:(unsigned long long)arg4 ;
  -(id)relatedDebugInformationBetweenMoment:(id)arg1 andRelatedMoment:(id)arg2 relatedType:(unsigned long long)arg3 precision:(unsigned long long)arg4 ;
  -(id)curationDebugInformationForAsset:(id)arg1 precision:(unsigned long long)arg2 ;
  -(id)_getDefaultOutputPathForMetadataSnapshot;
  -(id)memoriesRelatedDefaultGraphExportFullPath;
  -(id)snapshotOuputFilePathURLForKey:(id)arg1 ;
  -(void)debugTitlesForAssetCollection:(id)arg1 result:(/*^block*/id)arg2 ;
  -(void)_performUpdates;
  -(void)startGraphUpdate:(id)arg1 ;
  -(void)_endUpdates;
  -(void)insertMoments:(id)arg1 ;
  -(void)deleteMoments:(id)arg1 ;
  -(void)deleteMomentsWithIdentifiers:(id)arg1 ;
  -(void)reloadMoments:(id)arg1 ;
  -(void)performBatchUpdates:(/*^block*/id)arg1 progressHandler:(/*^block*/id)arg2 completion:(/*^block*/id)arg3 ;
  -(id)_diverseResultsFromMatchingResults:(id)arg1 referenceEvent:(id)arg2 relatedType:(unsigned long long)arg3 options:(id)arg4 ;
  -(id)_postProcessGraphMatchingResults:(id)arg1 relatedType:(unsigned long long)arg2 options:(id)arg3 needsDebugInfo:(BOOL)arg4 ;
  -(id)_referenceAssetWithLocalIdentifier:(id)arg1 ;
  -(void)_generateTitleForRelatedResults:(id)arg1 withReferenceEvent:(id)arg2 referenceAsset:(id)arg3 ;
  -(id)relatedCollectionsForMoment:(id)arg1 relatedType:(unsigned long long)arg2 options:(id)arg3 generateTitles:(BOOL)arg4 error:(id*)arg5 ;
  -(id)relatedCollectionsForMemoryTripOrWeekend:(id)arg1 relatedType:(unsigned long long)arg2 options:(id)arg3 error:(id*)arg4 ;
  -(id)relatedCollectionsForDefaultAssetCollection:(id)arg1 relatedType:(unsigned long long)arg2 options:(id)arg3 error:(id*)arg4 ;
  -(id)_stringFromRelatedType:(unsigned long long)arg1 ;
  -(id)_fileURLForMomentNode:(id)arg1 relatedType:(unsigned long long)arg2 focusOnAsset:(id)arg3 toURL:(id)arg4 ;
  -(id)relatedCollectionsForAsset:(id)arg1 relatedType:(unsigned long long)arg2 options:(id)arg3 error:(id*)arg4 ;
  -(id)relatedCollectionsForMoment:(id)arg1 relatedType:(unsigned long long)arg2 options:(id)arg3 error:(id*)arg4 ;
  -(id)relatedCollectionsForPersonIdentifiers:(id)arg1 relatedType:(unsigned long long)arg2 options:(id)arg3 error:(id*)arg4 ;
  -(id)relatedCollectionsForAssetCollection:(id)arg1 relatedType:(unsigned long long)arg2 options:(id)arg3 error:(id*)arg4 ;
  -(BOOL)exportMatchingResultsForMoment:(id)arg1 relatedType:(unsigned long long)arg2 toURL:(id)arg3 error:(id*)arg4 ;
  -(BOOL)exportMatchingResultsForAsset:(id)arg1 relatedType:(unsigned long long)arg2 toURL:(id)arg3 error:(id*)arg4 ;
  -(BOOL)isReady;
  @end
  
  