int start= leftSide.getTokenStart(curr.leftStart()); int end= leftSide.getTokenStart(curr.leftEnd());
int start= ((JavaTokenComparator)leftSide).getTokenStart(curr.leftStart()); int end= ((JavaTokenComparator)leftSide).getTokenStart(curr.leftEnd());
	public String getAdditionalProposalInfo() {		StringBuffer buf= new StringBuffer();				try {			initializeTextChange();			TextChange change= getTextChange();			IDocument previewContent= change.getPreviewDocument(new NullProgressMonitor());			String currentConentString= change.getCurrentContent(new NullProgressMonitor());						ITokenComparator leftSide= new JavaTokenComparator(previewContent.get(), true); 			ITokenComparator rightSide= new JavaTokenComparator(currentConentString, true);						RangeDifference[] differences= RangeDifferencer.findRanges(leftSide, rightSide);			for (int i= 0; i < differences.length; i++) {				RangeDifference curr= differences[i];				int start= leftSide.getTokenStart(curr.leftStart());				int end= leftSide.getTokenStart(curr.leftEnd());				if (curr.kind() == RangeDifference.CHANGE && curr.leftLength() > 0) {					buf.append("<b>"); //$NON-NLS-1$					appendContent(previewContent, start, end, buf, false);					buf.append("</b>"); //$NON-NLS-1$				} else if (curr.kind() == RangeDifference.NOCHANGE) {					appendContent(previewContent, start, end, buf, true);				}			}					} catch (CoreException e) {			JavaPlugin.log(e);		} catch (BadLocationException e) {			JavaPlugin.log(e);		}		return buf.toString();	}