public V find(Point key) {
        Point region = findRegion(key);
        int x = region.x, y = region.y;
        if (0 <= x && x < DIM && 0 <= y && y < DIM) {
	        if (buckets[x][y] == null) {
	            return null;
	        }
	        for (V e : buckets[x][y]) {
	            if (((IMouseContainer)(e)).contains(key)) {
	                return e;
	            }
	        }
        }
        return null;
    }