public class Donut
{
    public static final String DATA = "maze.txt";

    public static void main (String[] args)
    {
        boolean debug = false;
        boolean verify = false;

        for (int i = 0; i < args.length; i++)
        {
            if ("-help".equals(args[i]))
            {
                System.out.println("Usage: [-verify] [-debug] [-help]");
                System.exit(0);
            }

            if ("-debug".equals(args[i]))
                debug = true;

            if ("-verify".equals(args[i]))
                verify = true;
        }

        if (verify)
        {
            Verifier theVerifier = new Verifier(debug);

            if (theVerifier.verify())
                System.out.println("Verified ok.");
            else
                System.out.println("Failed to verify.");
        }
    }
}
@@ -829,15 +829,457 @@
       %7D%0A
+        else%0A        %7B%0A            Maze theMaze = new Maze(DATA, debug);%0A            Traveller theTraveller = new Traveller(theMaze, debug);%0A%0A            if (debug)%0A            %7B%0A                System.out.println(theMaze);%0A%0A                System.out.println(theMaze.printWithPortals());%0A            %7D%0A%0A            int numberOfSteps = theTraveller.findAllKeys();%0A%0A            System.out.println(%22Number of steps: %22+numberOfSteps);%0A        %7D%0A
     %7D%0A%7D

Update Donut.java