public void output(String line)
            throws IOException {
        if (needsTabs == true) {
            for (int i = tabLevel; i > 0; --i) {
                writer.write("\t");
            }
            needsTabs = false;
        }

        writer.write(line);
    }