int length = fis.read(contents);
fis.read(contents);
    public static void main(String args[]) {        if (args.length == 0) {            printUsage();            System.exit(1);        }        String filename = null;        // Parse the arguments        for (int a = 0; a < args.length; a++) {            if (args[a].charAt(0) == '-') {                if (args[a].equals("-verbose"))                    verbose = true;                else if (args[a].equals("-debug"))                    debug = true;                else {                    printUsage();                    System.exit(1);                }            } else if (filename == null) {                filename = args[a];            } else {                printUsage();                System.exit(1);            }        }        if (verbose || debug) {            System.out.println("-------------------------------------------");            System.out.println("verbose = " + verbose);            System.out.println("debug = " + debug);            System.out.println("filename = " + filename);            System.out.println("-------------------------------------------");            System.out.println();        }        byte[] contents = null;        File f = new File(filename);        try {            FileInputStream fis = new FileInputStream(f);            int nAvail = fis.available();            contents = new byte[nAvail];            int length = fis.read(contents);            fis.close();            new IOR(contents).parse(new PrintWriter(System.out, true));        } catch (java.io.FileNotFoundException e) {            System.err.println("File not found: " + f);            return;        } catch (java.io.IOException e) {            System.err.println("Error reading file " + f);            return;        }    }