code: public boolean exitTheStatement(BreakStmt breakStmt) {
          if (!isReachable(breakStmt)) {
              return false;
          }
          Statement breakTarget = breakTarget(breakStmt);
          for (TryStmt tryStmt : containedTryStmts(breakTarget)) {
              if (contains(tryStmt.getTryBlock(), breakStmt)) {
                  if (!tryStmt.getFinallyBlock().isPresent() && !canCompleteNormally(tryStmt.getFinallyBlock().get())) {
                      return false;
                  }
              }
          }
          return true;
      }
docs: A reachable break statement exits a statement if, within the break target, either there are no try statements
  whose try blocks contain the break statement, or there are try statements whose try blocks contain the break
  statement and all finally clauses of those try statements can complete normally.