polygon with holes util