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

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

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

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

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

            if (v.verify())
                System.out.println("Verified ok.");
            else
                System.out.println("Verify failed!");

            System.exit(0);
        }

        // else
    }
}
@@ -15,16 +15,72 @@
 igsaw%0A%7B%0A
+    public static final String INPUT_FILE = %22data.tx%22;%0A%0A
     publ
@@ -854,15 +854,378 @@
     
-// else
+Vector%3CTile%3E tiles = Util.loadData(INPUT_FILE);%0A%0A        if (debug)%0A        %7B%0A            Iterator%3CTile%3E iter = tiles.iterator();%0A%0A            System.out.println(%22Loaded:%5Cn%5Cn%22);%0A%0A            while (iter.hasNext())%0A            %7B%0A                System.out.println(iter.next());%0A            %7D%0A        %7D%0A%0A        Solver s = new Solver(debug);%0A%0A        s.arrangement(tiles);
 %0A   

Update Jigsaw.java