RootStatement (ControlFlowGraph graph) { RootStatement root = graphToStatement(graph); if (!processStatement(root, new HashMap<>())) { // try { // DotExporter.toDotFile(root.getFirst().getStats().get(13), new File("c:\\Temp\\stat1.dot")); // } catch (Exception ex) { // ex.printStackTrace(); // } throw new RuntimeException("parsing failure!"); } LabelHelper.lowContinueLabels(root, new HashSet<>()); SequenceHelper.condenseSequences(root); root.buildMonitorFlags(); // build synchronized statements buildSynchronized(root); return root; }