private static boolean checkReinitVar(@NotNull Exprent var, @NotNull Statement statement, @NotNull Set<AssignmentExprent> exclude) {
    List<Exprent> exprents = statement.getExprents();
    if (exprents != null) {
      for (Exprent exprent : exprents) {
        if (!(exprent instanceof AssignmentExprent assignmentExprent)) {
          continue;
        }
        if (exclude.contains(assignmentExprent)) {
          continue;
        }
        Exprent left = assignmentExprent.getLeft();
        if (var.equals(left)) {
          return true;
        }
      }
    }
    if (statement.getStats() != null) {
      for (Statement children : statement.getStats()) {
        if (checkReinitVar(var, children, exclude)) {
          return true;
        }
      }
    }
    return false;
  }
private static boolean checkReinitVar(@NotNull Exprent var, @NotNull Statement statement, @NotNull Set<AssignmentExprent> exclude)