public static void dump(PackageContents pc, int tabLevel) {
        for (int i = 0; i < tabLevel; ++i) {
            System.out.print("\t");
        }
        System.out.println("package " + pc.getName() + " : ");
        HashMap childPackages = pc.getContainedPackages();
        Iterator it = childPackages.values().iterator();
        while (it.hasNext() == true) {
            dump((PackageContents) it.next(), tabLevel + 1);
        }

        it = pc.getContainedClasses().values().iterator();
        while (it.hasNext() == true) {
            for (int i = 0; i <= tabLevel; ++i) {
                System.out.print("\t");
            }
            System.out.println((String) it.next());
        }
    }