public void paintComponent(Graphics g) {
		int n = graph.getVertexCount();
		for(Vertex u : graph.getVertices()) {
			int ux = BORDER + u.getColumn() * VERTEX_DIST;
			int uy = BORDER + u.getRow() * VERTEX_DIST;
			for(Vertex v : graph.getNeighbors(u)) {
				int vx = BORDER + v.getColumn() * VERTEX_DIST;
				int vy = BORDER + v.getRow() * VERTEX_DIST;
				g.drawLine(ux, uy, vx, vy);
			}
		}
		for(Vertex u : graph.getVertices()) {
			int ux = BORDER + u.getColumn() * VERTEX_DIST - VERTEX_RADIUS;
			int uy = BORDER + u.getRow() * VERTEX_DIST - VERTEX_RADIUS;
			switch(u.getColor()) {
			case 0:  g.setColor(Color.BLUE); break;
			case 1:  g.setColor(Color.RED); break;
			case 2:  g.setColor(Color.GREEN); break;
			default: g.setColor(Color.WHITE);
			}
			g.fillOval(ux, uy, 2 * VERTEX_RADIUS, 2 * VERTEX_RADIUS);
			g.setColor(Color.BLACK);
			g.drawOval(ux, uy, 2 * VERTEX_RADIUS, 2 * VERTEX_RADIUS);
		}
	}