org_aspectj_tools_ajdoc_BugTest_java
org.aspectj.tools.ajdoc.Main
static void parseArgs(List vargs, File currentWorkingDir) {
        boolean addNextAsOption = false;
        boolean addNextAsArgFile = false;
        boolean addNextToAJCOptions = false;
        boolean addNextAsDocDir = false;
        boolean addNextAsClasspath = false;
        boolean ignoreArg = false;
        boolean addNextAsSourcePath = false;
        if (vargs.size() == 0) {
            Main.displayHelpAndExit(null);
        }
        for (Object varg : vargs) {
            String arg = (String)varg;
            ignoreArg = false;
            if (addNextAsDocDir) {
                docDir = arg;
                addNextAsDocDir = false;
            }
            if (addNextAsClasspath) {
                addNextAsClasspath = false;
            }
            if (addNextAsSourcePath) {
                Main.setSourcepath(arg);
                addNextAsSourcePath = false;
                ignoreArg = true;
            }
            if (arg.startsWith("@")) {
                Main.expandAtSignFile(arg.substring(1), currentWorkingDir);
                continue;
            }
            if (arg.equals("-argfile")) {
                addNextAsArgFile = true;
                continue;
            }
            if (addNextAsArgFile) {
                Main.expandAtSignFile(arg, currentWorkingDir);
                addNextAsArgFile = false;
                continue;
            }
            if (arg.equals("-d")) {
                addNextAsOption = true;
                options.addElement(arg);
                addNextAsDocDir = true;
                continue;
            }
            if (arg.equals("-bootclasspath")) {
                addNextAsOption = true;
                addNextToAJCOptions = true;
                options.addElement(arg);
                ajcOptions.addElement(arg);
                continue;
            }
            if (arg.equals("-source")) {
                addNextAsOption = true;
                addNextToAJCOptions = true;
                addNextAsClasspath = true;
                options.addElement(arg);
                ajcOptions.addElement(arg);
                continue;
            }
            if (arg.equals("-classpath")) {
                addNextAsOption = true;
                addNextToAJCOptions = true;
                addNextAsClasspath = true;
                options.addElement(arg);
                ajcOptions.addElement(arg);
                continue;
            }
            if (arg.equals("-encoding")) {
                addNextAsOption = true;
                addNextToAJCOptions = false;
                options.addElement(arg);
                continue;
            }
            if (arg.equals("-docencoding")) {
                addNextAsOption = true;
                addNextToAJCOptions = false;
                options.addElement(arg);
                continue;
            }
            if (arg.equals("-charset")) {
                addNextAsOption = true;
                addNextToAJCOptions = false;
                options.addElement(arg);
                continue;
            }
            if (arg.equals("-sourcepath")) {
                addNextAsSourcePath = true;
                continue;
            }
            if (arg.equals("-link")) {
                addNextAsOption = true;
                options.addElement(arg);
                continue;
            }
            if (arg.equals("-bottom")) {
                addNextAsOption = true;
                options.addElement(arg);
                continue;
            }
            if (arg.equals("-windowtitle")) {
                addNextAsOption = true;
                options.addElement(arg);
                continue;
            }
            if (arg.equals("-XajdocDebug")) {
                deleteTempFilesOnExit = false;
                continue;
            }
            if (arg.equals("-use")) {
                System.out.println("> Ignoring unsupported option: -use");
                continue;
            }
            if (arg.equals("-splitindex")) continue;
            if (arg.startsWith("-") || addNextAsOption || addNextToAJCOptions) {
                if (arg.equals("-private")) {
                    docModifier = "private";
                } else if (arg.equals("-package")) {
                    docModifier = "package";
                } else if (arg.equals("-protected")) {
                    docModifier = "protected";
                } else if (arg.equals("-public")) {
                    docModifier = "public";
                } else if (arg.equals("-verbose")) {
                    verboseMode = true;
                } else if (arg.equals("-author")) {
                    authorStandardDocletSwitch = true;
                } else if (arg.equals("-version")) {
                    versionStandardDocletSwitch = true;
                } else if (arg.equals("-v")) {
                    System.out.println(Main.getVersion());
                    Main.exit(0);
                } else if (arg.equals("-help")) {
                    Main.displayHelpAndExit(null);
                } else if (arg.equals("-doclet") || arg.equals("-docletpath")) {
                    System.out.println("The doclet and docletpath options are not currently supported    \nsince ajdoc makes assumptions about the behavior of the standard \ndoclet. If you would find this option useful please email us at: \n                                                                 \n       aspectj-dev@eclipse.org                            \n                                                                 \n");
                    Main.exit(0);
                } else if (!arg.equals("-nonavbar") && !arg.equals("-noindex")) {
                    if (addNextToAJCOptions || addNextAsOption) {
                        if (addNextToAJCOptions) {
                            ajcOptions.addElement(arg);
                            if (!arg.startsWith("-")) {
                                addNextToAJCOptions = false;
                            }
                            if (!addNextAsOption) {
                                continue;
                            }
                        }
                    } else {
                        if (arg.startsWith("-")) {
                            ajcOptions.addElement(arg);
                            addNextToAJCOptions = true;
                            continue;
                        }
                        System.err.println("> unrecognized argument: " + arg);
                        Main.displayHelpAndExit(null);
                    }
                }
                options.addElement(arg);
                addNextAsOption = false;
                continue;
            }
            if (FileUtil.hasSourceSuffix(arg) || arg.endsWith(".lst") && arg != null) {
                File f = new File(arg);
                if (f.isAbsolute()) {
                    filenames.addElement(arg);
                } else {
                    filenames.addElement(currentWorkingDir + "/" + arg);
                }
                fileList.addElement(arg);
                continue;
            }
            if (ignoreArg) continue;
            packageMode = true;
            packageList.addElement(arg);
            arg = arg.replace('.', '/');
            for (int c = 0; c < sourcepath.size(); ++c) {
                String path = sourcepath.elementAt(c) + "/" + arg;
                File pkg = new File(path);
                if (pkg.isDirectory()) {
                    String[] files;
                    for (String file : files = pkg.list((FilenameFilter)new /* Unavailable Anonymous Inner Class!! */)) {
                        filenames.addElement(sourcepath.elementAt(c) + "/" + arg + "/" + file);
                    }
                    continue;
                }
                if (c != sourcepath.size()) continue;
                System.out.println("ajdoc: No package, class, or source file found named " + arg + ".");
            }
        }
        if (!(options.contains("-private") || options.contains("-package") || options.contains("-protected") || options.contains("-public"))) {
            options.addElement("-package");
        }
    }

    static void expandAtSignFile(String filename, File currentWorkingDir) {
        LinkedList<String> result = new LinkedList<String>();
        File atFile = Main.qualifiedFile(filename, currentWorkingDir);
        String atFileParent = atFile.getParent();
        File myWorkingDir = null;
        if (atFileParent != null) {
            myWorkingDir = new File(atFileParent);
        }
        try {
            BufferedReader stream = new BufferedReader(new FileReader(atFile));
            String line = null;
            while ((line = stream.readLine()) != null) {
                int commentStart = line.indexOf("//");
                if (commentStart != -1) {
                    line = line.substring(0, commentStart);
                }
                if ((line = line.trim()).length() == 0) continue;
                result.add(line);
            }
            stream.close();
        }
        catch (IOException e) {
            System.err.println("Error while reading the @ file " + atFile.getPath() + ".\n" + e);
            System.exit(-1);
        }
        Main.parseArgs(result, myWorkingDir);
    }

    static File qualifiedFile(String name, File currentWorkingDir) {
        File file = new File(name = name.replace('/', File.separatorChar));
        if (!file.isAbsolute() && currentWorkingDir != null) {
            file = new File(currentWorkingDir, name);
        }
        return file;
    }

    static void displayHelpAndExit(String message) {
        shownAjdocUsageMessage = true;
        if (message != null) {
            System.err.println(message);
            System.err.println();
            System.err.println("Usage: ajdoc <options> <source files>\n\nwhere <options> includes:\n  -public                   Show only public classes and members\n  -protected                Show protected/public classes and members\n  -package                  Show package/protected/public classes and members\n  -private                  Show all classes and members\n  -help                     Display command line options\n  -sourcepath <pathlist>    Specify where to find source files\n  -classpath <pathlist>     Specify where to find user class files\n  -bootclasspath <pathlist> Override location of class files loaded\n  -d <directory>            Destination directory for output files\n  -windowtitle <text>       Browser window title for the documenation  -bottom <html-code>       Include bottom text for each page  -link <url>               Create links to javadoc output at <url>  -argfile <file>           Build config file (wildcards not supported)\n  -verbose                  Output messages about what Javadoc is doing\n  -v                        Print out the version of ajdoc\n  -source <version>         set source level (1.3, 1.4 or 1.5)\n\nas well as the AspectJ Compiler options.\n\nIf an argument is of the form @<filename>, the file will be interpreted as\na line delimited set of arguments to insert into the argument list.\n");
        } else {
            System.out.println("Usage: ajdoc <options> <source files>\n\nwhere <options> includes:\n  -public                   Show only public classes and members\n  -protected                Show protected/public classes and members\n  -package                  Show package/protected/public classes and members\n  -private                  Show all classes and members\n  -help                     Display command line options\n  -sourcepath <pathlist>    Specify where to find source files\n  -classpath <pathlist>     Specify where to find user class files\n  -bootclasspath <pathlist> Override location of class files loaded\n  -d <directory>            Destination directory for output files\n  -windowtitle <text>       Browser window title for the documenation  -bottom <html-code>       Include bottom text for each page  -link <url>               Create links to javadoc output at <url>  -argfile <file>           Build config file (wildcards not supported)\n  -verbose                  Output messages about what Javadoc is doing\n  -v                        Print out the version of ajdoc\n  -source <version>         set source level (1.3, 1.4 or 1.5)\n\nas well as the AspectJ Compiler options.\n\nIf an argument is of the form @<filename>, the file will be interpreted as\na line delimited set of arguments to insert into the argument list.\n");
            Main.exit(0);
        }
    }

    protected static void exit(int value) {
        System.out.flush();
        System.err.flush();
        System.exit(value);
    }

    public static void handleInternalError(Throwable uncaughtThrowable) {
        System.err.println("An internal error occured in ajdoc");
        System.err.println(internalErrorMessage);
        System.err.println(uncaughtThrowable.toString());
        uncaughtThrowable.printStackTrace();
        System.err.println();
    }

    static String getVersion() {
        return "ajdoc version " + Version.getText();
    }

    public static boolean hasAborted() {
        return aborted;
    }

    public static IMessage[] getErrors() {
        return errors;
    }

    public static boolean hasShownAjdocUsageMessage() {
        return shownAjdocUsageMessage;
    }

    public static void setOutputWorkingDir(String fullyQulifiedOutputDir) {
        if (fullyQulifiedOutputDir == null) {
            Main.resetOutputWorkingDir();
        } else {
            outputWorkingDir = fullyQulifiedOutputDir + File.separatorChar + "ajdocworkingdir";
        }
    }

    public static void resetOutputWorkingDir() {
        outputWorkingDir = "ajdocworkingdir";
    }

    static {
        docModifier = "package";
        verboseMode = false;
        packageMode = false;
        authorStandardDocletSwitch = false;
        versionStandardDocletSwitch = false;
        rootDir = null;
        declIDTable = new Hashtable();
        docDir = ".";
        deleteTempFilesOnExit = true;
        aborted = false;
        shownAjdocUsageMessage = false;
        outputWorkingDir = "ajdocworkingdir";
    }
}
 -> java.util.List.size(): int -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.length(): int -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.endsWith(java.lang.String): boolean -> java.lang.String.length(): int -> java.io.File.isAbsolute(): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Vector.contains(java.lang.Object): boolean -> java.util.Vector.contains(java.lang.Object): boolean -> java.util.Vector.contains(java.lang.Object): boolean -> java.util.Vector.contains(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void
 [CALL] -> java.util.List.size(): int -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean [CALL] [CALL] [CALL] -> java.lang.String.length(): int [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.endsWith(java.lang.String): boolean -> java.lang.String.length(): int [EXIT] [EXIT] -> java.io.File.isAbsolute(): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.startsWith(java.lang.String): boolean -> java.util.Vector.addElement(java.lang.Object): void -> java.util.Iterator.hasNext(): boolean -> java.util.Vector.contains(java.lang.Object): boolean -> java.util.Vector.contains(java.lang.Object): boolean -> java.util.Vector.contains(java.lang.Object): boolean -> java.util.Vector.contains(java.lang.Object): boolean -> java.util.Vector.addElement(java.lang.Object): void [EXIT]