return current;
    protected synchronized OMDist findClosestTest(OMDist current, int index, OMGeometry graphic, int x, int y, float limit, boolean resetSelect) {	OMGraphicList omgl;	float currentDistance;	// cannot select a graphic which isn't visible	if (!graphic.isVisible()) {	    return null;	}	if (graphic instanceof OMGraphicList) {	    omgl = (OMGraphicList)graphic; 	    OMDist dist = omgl._findClosest(x, y, limit, resetSelect);	    if (dist.omg == null) {		return null;	    } else {		currentDistance = dist.d;		if (omgl.isVague()) {		    graphic = omgl;		} else {		    graphic = dist.omg;		}	    }	} else {	    if (resetSelect) graphic.deselect();	    currentDistance = graphic.distance(x, y);	}	if (currentDistance < limit && 	    currentDistance < current.d) {	    if (!isVague()) {		current.omg = graphic;	    } else {		current.omg = this;	    }	    current.index = index;	    current.d = currentDistance;	    return current;	}	return null;    }