final Project project = psiField.getProject();
final PsiManager manager = psiField.getContainingFile().getManager();
final PsiType psiType = psiField.getType();
if (psiType instanceof PsiClassType) {
final PsiClassType objectType = PsiType.getJavaLangObject(manager, GlobalSearchScope.allScope(project));
final PsiClass objectClass = objectType.resolve();
PsiClassType psiClassType = (PsiClassType) psiType;
PsiClassType.ClassResolveResult resolveResult = psiClassType.resolveGenerics();
PsiSubstitutor fieldClassSubstitutor = resolveResult.getSubstitutor();
PsiClass fieldClass = resolveResult.getElement();
if (null != fieldClass && null != objectClass) {
final Collection<PsiMethod> methodsToDelegate = collectAllMethods(fieldClass, objectClass);