private void copyMembersToTargetClass(CompilationUnit declaringCuNode, CompilationUnit targetCuNode, OldASTRewrite rewrite, IProgressMonitor pm, RefactoringStatus status) throws JavaModelException {
private void copyMembersToTargetClass(CompilationUnit declaringCuNode, CompilationUnit targetCuNode, TypeVariableMaplet[] mapping, ASTRewrite rewrite, IProgressMonitor pm, RefactoringStatus status) throws JavaModelException {
	private void copyMembersToTargetClass(CompilationUnit declaringCuNode, CompilationUnit targetCuNode, OldASTRewrite rewrite, IProgressMonitor pm, RefactoringStatus status) throws JavaModelException {		TypeDeclaration targetClass= ASTNodeSearchUtil.getTypeDeclarationNode(getTargetClass(), targetCuNode);		fMembersToPullUp= JavaElementUtil.sortByOffset(fMembersToPullUp); // preserve member order		pm.beginTask("", fMembersToPullUp.length); //$NON-NLS-1$		for (int i= 0; i < fMembersToPullUp.length; i++) {			IMember member= fMembersToPullUp[i];			if (member instanceof IField)				copyFieldToTargetClass((IField)member, declaringCuNode, targetClass, rewrite, new SubProgressMonitor(pm, 1), status);			else if (member instanceof IMethod)				copyMethodToTargetClass((IMethod)member, declaringCuNode, targetClass, rewrite, new SubProgressMonitor(pm, 1), status);			else if (member instanceof IType)				copyTypeToTargetClass((IType)member, declaringCuNode, targetClass, rewrite);			else 				Assert.isTrue(false);			pm.worked(1);		}		pm.done();	}