int main()
try {
    using namespace Graph_lib;

    Point tl(200,50);
    Simple_window win(tl,1200,800,"My window");

    // how is a Closed_polyline filled?
    Closed_polyline cp;
    cp.add(Point(150,150));
    cp.add(Point(500,150));
    cp.add(Point(500,500));
    cp.add(Point(150,500));
    cp.set_fill_color(Color::red);
    win.attach(cp);
    win.wait_for_button();
    cp.add(Point(550,375));
    win.wait_for_button();
    cp.add(Point(375,550));
    cp.add(Point(375,100));
    cp.add(Point(300,550));
    win.wait_for_button();

    // same for Striped_closed_polyline
    Striped_closed_polyline scp;
    scp.add(Point(750,150));
    scp.add(Point(1100,150));
    scp.add(Point(1100,500));
    scp.add(Point(750,500));
    scp.set_fill_color(Color::red);
    win.attach(scp);
    win.wait_for_button();
    scp.add(Point(1150,375));
    win.wait_for_button();
    scp.add(Point(975,550));
    scp.add(Point(975,100));
    scp.add(Point(900,550));
    win.wait_for_button();
    scp.add(Point(1150,350));
    win.wait_for_button();

    // extreme shape
    Striped_closed_polyline scp_extr;
    for (int i = 0; i<100; ++i) {
        scp_extr.add(Point(600+randint(-300,300),400+randint(-300,300)));
    }
    scp_extr.set_fill_color(Color::blue);
    win.attach(scp_extr);
    win.wait_for_button();
}
catch (exception& e) {
    cerr << "exception: " << e.what() << endl;
    keep_window_open();
}
catch (...) {
    cerr << "exception\n";
    keep_window_open();
}
int main() {
	using namespace Graph_lib;
	Simple_window win {Point{100, 100}, 800, 600, "Exercise 7"};
	Striped_closed_polyline scp;
	scp.add(Point{50, 200});
	scp.add(Point{100, 110});
	scp.add(Point{150, 100});
	scp.add(Point{160, 300});
	scp.add(Point{170, 330});
	/*
	scp.add(Point{200, 300});
	scp.add(Point{150, 320});
	scp.add(Point{175, 440});
	*/
	scp.set_color(Color::black);

	win.attach(scp);

	win.wait_for_button();
}