protected void print() {
			System.out.println("Print for " + def + "------------------");

			cfg.visit(new PrintVisitor() {
				Phi phi = null;

				public void visitBlock(final Block block) {
					phi = exprPhiAtBlock(block);
					super.visitBlock(block);
				}

				public void visitLabelStmt(final LabelStmt stmt) {
					super.visitLabelStmt(stmt);

					if (stmt.label().startsBlock()) {
						if (phi != null) {
							println(phi);
						}
					}
				}

				public void visitLocalExpr(final LocalExpr expr) {
					super.visitLocalExpr(expr);

					if (expr.def() == def) {
						super.print("{" + defs.get(expr) + "}");
					}
				}
			});

			System.out.println("End Print ----------------------------");
		}