private boolean jj_3R_83() {
    Token xsp;
    xsp = jj_scanpos;
    if (jj_3R_152()) jj_scanpos = xsp;
    if (jj_scan_token(IF)) return true;
    if (jj_3R_57()) return true;
    if (jj_scan_token(THEN)) return true;
    if (jj_3R_156()) return true;
    while (true) {
      xsp = jj_scanpos;
      if (jj_3R_422()) { jj_scanpos = xsp; break; }
    }
    xsp = jj_scanpos;
    if (jj_3R_423()) jj_scanpos = xsp;
    if (jj_scan_token(END)) return true;
    if (jj_scan_token(IF)) return true;
    xsp = jj_scanpos;
    if (jj_3R_424()) jj_scanpos = xsp;
    if (jj_scan_token(SEMICOLON)) return true;
    return false;
  }