// This file is automatically generated by DemeterJ.

TraceVisitor {
  {{
    protected java.io.PrintWriter out = new java.io.PrintWriter(System.out, true);
    java.io.PrintWriter get_out()             { return out; }
    void set_out(java.io.PrintWriter new_out) { out = new_out; }
    TraceVisitor(java.io.PrintWriter out)     { set_out(out); }
    TraceVisitor(java.io.PrintStream out)
      { set_out(new java.io.PrintWriter(out, true)); }
  }}
  finish {{ out.flush(); }}


  before TestFile {{
    out.println("before TestFile");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after TestFile {{
    out.println("after TestFile");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> TestFile, tests, Test_List {{
    out.println("before -> TestFile, tests, Test_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> TestFile, tests, Test_List {{
    out.println("after -> TestFile, tests, Test_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Test {{
    out.println("before Test");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Test {{
    out.println("after Test");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Test, result, Result {{
    out.println("before -> Test, result, Result ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Test, result, Result {{
    out.println("after -> Test, result, Result ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before ComputeBiasTest {{
    out.println("before ComputeBiasTest");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after ComputeBiasTest {{
    out.println("after ComputeBiasTest");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> ComputeBiasTest, testname, TestName {{
    out.println("before -> ComputeBiasTest, testname, TestName ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> ComputeBiasTest, testname, TestName {{
    out.println("after -> ComputeBiasTest, testname, TestName ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> ComputeBiasTest, pairs, Pair_List {{
    out.println("before -> ComputeBiasTest, pairs, Pair_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> ComputeBiasTest, pairs, Pair_List {{
    out.println("after -> ComputeBiasTest, pairs, Pair_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before UpdateBiasTest {{
    out.println("before UpdateBiasTest");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after UpdateBiasTest {{
    out.println("after UpdateBiasTest");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> UpdateBiasTest, testname, TestName {{
    out.println("before -> UpdateBiasTest, testname, TestName ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> UpdateBiasTest, testname, TestName {{
    out.println("after -> UpdateBiasTest, testname, TestName ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> UpdateBiasTest, beforepoly, Polynomial {{
    out.println("before -> UpdateBiasTest, beforepoly, Polynomial ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> UpdateBiasTest, beforepoly, Polynomial {{
    out.println("after -> UpdateBiasTest, beforepoly, Polynomial ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> UpdateBiasTest, pairs, OPair_List {{
    out.println("before -> UpdateBiasTest, pairs, OPair_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> UpdateBiasTest, pairs, OPair_List {{
    out.println("after -> UpdateBiasTest, pairs, OPair_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Pair {{
    out.println("before Pair");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Pair {{
    out.println("after Pair");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Pair, r, Integer {{
    out.println("before -> Pair, r, Integer ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Pair, r, Integer {{
    out.println("after -> Pair, r, Integer ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Pair, frac, Double {{
    out.println("before -> Pair, frac, Double ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Pair, frac, Double {{
    out.println("after -> Pair, frac, Double ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before OPair {{
    out.println("before OPair");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after OPair {{
    out.println("after OPair");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> OPair, op, Op {{
    out.println("before -> OPair, op, Op ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> OPair, op, Op {{
    out.println("after -> OPair, op, Op ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> OPair, r, Integer {{
    out.println("before -> OPair, r, Integer ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> OPair, r, Integer {{
    out.println("after -> OPair, r, Integer ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> OPair, frac, Double {{
    out.println("before -> OPair, frac, Double ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> OPair, frac, Double {{
    out.println("after -> OPair, frac, Double ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Op {{
    out.println("before Op");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Op {{
    out.println("after Op");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Added {{
    out.println("before Added");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Added {{
    out.println("after Added");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Subtracted {{
    out.println("before Subtracted");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Subtracted {{
    out.println("after Subtracted");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Polynomial {{
    out.println("before Polynomial");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Polynomial {{
    out.println("after Polynomial");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Polynomial, x3, SDouble {{
    out.println("before -> Polynomial, x3, SDouble ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Polynomial, x3, SDouble {{
    out.println("after -> Polynomial, x3, SDouble ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Polynomial, x2, SDouble {{
    out.println("before -> Polynomial, x2, SDouble ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Polynomial, x2, SDouble {{
    out.println("after -> Polynomial, x2, SDouble ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Polynomial, x1, SDouble {{
    out.println("before -> Polynomial, x1, SDouble ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Polynomial, x1, SDouble {{
    out.println("after -> Polynomial, x1, SDouble ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Polynomial, x0, SDouble {{
    out.println("before -> Polynomial, x0, SDouble ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Polynomial, x0, SDouble {{
    out.println("after -> Polynomial, x0, SDouble ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before TestName {{
    out.println("before TestName");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after TestName {{
    out.println("after TestName");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> TestName, s, Ident {{
    out.println("before -> TestName, s, Ident ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> TestName, s, Ident {{
    out.println("after -> TestName, s, Ident ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Result {{
    out.println("before Result");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Result {{
    out.println("after Result");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Result, v, Double {{
    out.println("before -> Result, v, Double ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Result, v, Double {{
    out.println("after -> Result, v, Double ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Result, poly, Polynomial {{
    out.println("before -> Result, poly, Polynomial ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Result, poly, Polynomial {{
    out.println("after -> Result, poly, Polynomial ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before SDouble {{
    out.println("before SDouble");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after SDouble {{
    out.println("after SDouble");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> SDouble, v, Double {{
    out.println("before -> SDouble, v, Double ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> SDouble, v, Double {{
    out.println("after -> SDouble, v, Double ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before PDouble {{
    out.println("before PDouble");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after PDouble {{
    out.println("after PDouble");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before NDouble {{
    out.println("before NDouble");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after NDouble {{
    out.println("after NDouble");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before PrintVisitor {{
    out.println("before PrintVisitor");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after PrintVisitor {{
    out.println("after PrintVisitor");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> PrintVisitor, indent, int {{
    out.println("before -> PrintVisitor, indent, int ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> PrintVisitor, indent, int {{
    out.println("after -> PrintVisitor, indent, int ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> PrintVisitor, needSpace, boolean {{
    out.println("before -> PrintVisitor, needSpace, boolean ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> PrintVisitor, needSpace, boolean {{
    out.println("after -> PrintVisitor, needSpace, boolean ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before CopyVisitor {{
    out.println("before CopyVisitor");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after CopyVisitor {{
    out.println("after CopyVisitor");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> CopyVisitor, copy, Object {{
    out.println("before -> CopyVisitor, copy, Object ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> CopyVisitor, copy, Object {{
    out.println("after -> CopyVisitor, copy, Object ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before SubgraphVisitor {{
    out.println("before SubgraphVisitor");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after SubgraphVisitor {{
    out.println("after SubgraphVisitor");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> SubgraphVisitor, is_equal, boolean {{
    out.println("before -> SubgraphVisitor, is_equal, boolean ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> SubgraphVisitor, is_equal, boolean {{
    out.println("after -> SubgraphVisitor, is_equal, boolean ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before EqualVisitor {{
    out.println("before EqualVisitor");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after EqualVisitor {{
    out.println("after EqualVisitor");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> EqualVisitor, is_equal, boolean {{
    out.println("before -> EqualVisitor, is_equal, boolean ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> EqualVisitor, is_equal, boolean {{
    out.println("after -> EqualVisitor, is_equal, boolean ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before DisplayVisitor {{
    out.println("before DisplayVisitor");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after DisplayVisitor {{
    out.println("after DisplayVisitor");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> DisplayVisitor, indent, int {{
    out.println("before -> DisplayVisitor, indent, int ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> DisplayVisitor, indent, int {{
    out.println("after -> DisplayVisitor, indent, int ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before TraceVisitor {{
    out.println("before TraceVisitor");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after TraceVisitor {{
    out.println("after TraceVisitor");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> TraceVisitor, indent, int {{
    out.println("before -> TraceVisitor, indent, int ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> TraceVisitor, indent, int {{
    out.println("after -> TraceVisitor, indent, int ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before UniversalVisitor {{
    out.println("before UniversalVisitor");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after UniversalVisitor {{
    out.println("after UniversalVisitor");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Test_List {{
    out.println("before Test_List");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Test_List {{
    out.println("after Test_List");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Test_List, first, Nonempty_Test_List {{
    out.println("before -> Test_List, first, Nonempty_Test_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Test_List, first, Nonempty_Test_List {{
    out.println("after -> Test_List, first, Nonempty_Test_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Pair_List {{
    out.println("before Pair_List");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Pair_List {{
    out.println("after Pair_List");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Pair_List, first, Nonempty_Pair_List {{
    out.println("before -> Pair_List, first, Nonempty_Pair_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Pair_List, first, Nonempty_Pair_List {{
    out.println("after -> Pair_List, first, Nonempty_Pair_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before OPair_List {{
    out.println("before OPair_List");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after OPair_List {{
    out.println("after OPair_List");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> OPair_List, first, Nonempty_OPair_List {{
    out.println("before -> OPair_List, first, Nonempty_OPair_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> OPair_List, first, Nonempty_OPair_List {{
    out.println("after -> OPair_List, first, Nonempty_OPair_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Nonempty_Test_List {{
    out.println("before Nonempty_Test_List");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Nonempty_Test_List {{
    out.println("after Nonempty_Test_List");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Nonempty_Test_List, it, Test {{
    out.println("before -> Nonempty_Test_List, it, Test ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Nonempty_Test_List, it, Test {{
    out.println("after -> Nonempty_Test_List, it, Test ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Nonempty_Test_List, next, Nonempty_Test_List {{
    out.println("before -> Nonempty_Test_List, next, Nonempty_Test_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Nonempty_Test_List, next, Nonempty_Test_List {{
    out.println("after -> Nonempty_Test_List, next, Nonempty_Test_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Nonempty_Pair_List {{
    out.println("before Nonempty_Pair_List");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Nonempty_Pair_List {{
    out.println("after Nonempty_Pair_List");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Nonempty_Pair_List, it, Pair {{
    out.println("before -> Nonempty_Pair_List, it, Pair ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Nonempty_Pair_List, it, Pair {{
    out.println("after -> Nonempty_Pair_List, it, Pair ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Nonempty_Pair_List, next, Nonempty_Pair_List {{
    out.println("before -> Nonempty_Pair_List, next, Nonempty_Pair_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Nonempty_Pair_List, next, Nonempty_Pair_List {{
    out.println("after -> Nonempty_Pair_List, next, Nonempty_Pair_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before Nonempty_OPair_List {{
    out.println("before Nonempty_OPair_List");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after Nonempty_OPair_List {{
    out.println("after Nonempty_OPair_List");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Nonempty_OPair_List, it, OPair {{
    out.println("before -> Nonempty_OPair_List, it, OPair ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Nonempty_OPair_List, it, OPair {{
    out.println("after -> Nonempty_OPair_List, it, OPair ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  before -> Nonempty_OPair_List, next, Nonempty_OPair_List {{
    out.println("before -> Nonempty_OPair_List, next, Nonempty_OPair_List ");
    indent++;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
  after -> Nonempty_OPair_List, next, Nonempty_OPair_List {{
    out.println("after -> Nonempty_OPair_List, next, Nonempty_OPair_List ");
    indent--;
    for (int i = 0; i < indent; i++) out.print(" ");
  }}
}