public LinkedList<Vertex> createPlan(int start, int stop, int color, boolean intekrock) {
        LinkedList<Vertex> path;
        Graph graph = new Graph(nodes, edges);
        DijkstraAlgorithm dijkstra = new DijkstraAlgorithm(graph, ds);
        // Compute shortest path
        dijkstra.execute(nodes.get(start - 1));
        path = dijkstra.getPath(nodes.get(stop - 1));
        //System.out.println("nodes.get(start) " + nodes.get(start-1));
        //System.out.println("nodes.get(stop) " + nodes.get(stop-1));

        Arrays.fill(ds.notoknumber, 0);
        // Get shortest path
        if (intekrock) {
            System.out.println("path.size() " + path.size());
            for (int i = 1; i < path.size() - 1; i++) {
                ds.notoknumber[i] = Integer.parseInt(path.get(i).getId());
                System.out.println("ds.notoknumber[i] " + ds.notoknumber[i]);
            }
        }

        // Arcs in the shortest path
        for (int i = 0; i < path.size() - 1; i++) {
            for (int j = 0; j < ds.arcs; j++) {
                if (ds.arcStart[j] == Integer.parseInt(path.get(i).getId())
                        && ds.arcEnd[j]
                        == Integer.parseInt(path.get(i + 1).getId())) {
                    //System.out.println("Arc: " + j);
                    ds.arcColor[j] = color;
                }
            }
        }

        return path;
    }