Refactoring now TMainObject and TPref should realize IEqualityComparer