added Polygon class