the "point-in-polygon" solution