fOffset= offset;  if (fOffset < 0)
try { return performMatch(document, offset); } catch (BadLocationException ble) {
	public IRegion match(IDocument document, int offset) {		fOffset= offset;		if (fOffset < 0)			return null;		fDocument= document;		if (fDocument != null && matchPairsAt() && fStartPos != fEndPos)			return new Region(fStartPos, fEndPos - fStartPos + 1);		return null;	}