public static void main(String[] args) {
		Log.print(Log.system, "Hello, GraphSolver!");
		Log.print(Log.system, "Graph's presents: " + Arrays.toString(States.values()));
		Graph graph = null;
		try {
			 graph = GraphParser.parseGraph(new File("bipartite.txt"));
		} catch (FileNotFoundException e) {
			Log.print(Log.error, "File " + e.toString() + "not found!");
			e.printStackTrace();
		}
		
		if (graph != null){
			graph.printGraph();
			
//			GraphAlgorithm.Prima(graph);
//			System.out.println(GraphAlgorithm.Kruskal(graph));
//			GraphAlgorithm.Boruvka(graph);
//			GraphAlgorithm.Fleury(graph);
//			GraphAlgorithm.Rhid(graph);

			Log.print(Log.system, "Trying to find max. matching");
			if (graph.isBipartite())
				GraphAlgorithm.Kuhn(graph);
			else
				GraphAlgorithm.Edmonds(graph);
			
			Log.print(Log.system, "Program end");
		}
		
	}