p.setIndentation(p.getIndentation() - (isFirst ? 0 : 32));
if (isFirst) p.setIndentation(p.getIndentation() - 32);
    public void visitJavadoc(JavadocComment comment) {        StringTokenizer tok = new StringTokenizer(comment.getText(), "\n");        boolean         isFirst = true;        if (!nl) {            p.newLine();        }        p.newLine();        p.print("/**");        while (tok.hasMoreTokens()) {            String      text = tok.nextToken().trim();            String      type = null;            boolean     param = false;            int idx = text.indexOf("@param");            if (idx >= 0) {                type = "@param";                param = true;            }            if (idx < 0) {                idx = text.indexOf("@exception");                if (idx >= 0) {                    type = "@exception";                    param = true;                }            }            if (idx < 0) {                idx = text.indexOf("@exception");                if (idx >= 0) {                    type = "@exception";                    param = true;                }            }            if (idx < 0) {                idx = text.indexOf("@author");                if (idx >= 0) {                    type = "@author";                }            }            if (idx < 0) {                idx = text.indexOf("@see");                if (idx >= 0) {                    type = "@see";                }            }            if (idx < 0) {                idx = text.indexOf("@version");                if (idx >= 0) {                    type = "@version";                }            }            if (idx < 0) {                idx = text.indexOf("@return");                if (idx >= 0) {                    type = "@return";                }            }            if (idx < 0) {                idx = text.indexOf("@deprecated");                if (idx >= 0) {                    type = "@deprecated";                }            }            if (idx >= 0) {                p.newLine();                isFirst = false;                if (param) {                    text = text.substring(idx + type.length()).trim();                    idx = Math.min(text.indexOf(" ") == -1 ? Integer.MAX_VALUE : text.indexOf(" "),                                   text.indexOf("\t") == -1 ? Integer.MAX_VALUE : text.indexOf("\t"));                    if (idx == Integer.MAX_VALUE) {                        idx = 0;                    }                    String      before = text.substring(0, idx);                    p.print(" * " + type);                    p.setIndentation(p.getIndentation() + 12);                    p.print(before);                    p.setIndentation(p.getIndentation() + 20);                    p.print(text.substring(idx).trim());                    p.setIndentation(p.getIndentation() - 20);                    p.setIndentation(p.getIndentation() - 12);                } else {                    text = text.substring(idx + type.length()).trim();                    p.print(" * " + type);                    p.setIndentation(p.getIndentation() + 12);                    p.print(text);                    p.setIndentation(p.getIndentation() - 12);                }            } else {                text = text.substring(text.indexOf("*") + 1);                if (tok.hasMoreTokens() || text.length() > 0) {                    p.newLine();                    p.print(" * ");                    p.setIndentation(p.getIndentation() + (isFirst ? 0 : 32));                    p.print(text.trim());                    p.setIndentation(p.getIndentation() - (isFirst ? 0 : 32));                }            }        }        p.newLine();        p.print(" */");    }