class MissingEnglishPosFinder {

  public static void main(String[] args) throws IOException {<FILL_FUNCTION_BODY>}

  private static boolean noTag(AnalyzedTokenReadings atr) {
    return !atr.isTagged();
  }
}

    if (args.length != 2) {
      System.out.println("Usage: " + MissingEnglishPosFinder.class.getSimpleName() + " <file> <ngram_dir>");
      System.exit(1);
    }
    List<String> lines = Files.readAllLines(Paths.get(args[0]));
    //List<String> lines = Arrays.asList("bike", "nicexxx");
    LuceneLanguageModel lm = new LuceneLanguageModel(new File(args[1]));
    EnglishTagger tagger = new EnglishTagger();
    for (String word : lines) {
      int origCount = -1;
      if (word.matches("\\d+ .*")) {
        String[] parts = word.split(" ");
        origCount = Integer.parseInt(parts[0]);
        word = parts[1];
      }
      word = word.trim();
      if (word.endsWith(".")) {
        word = word.substring(0, word.length()-1);
      }
      List<AnalyzedTokenReadings> matches = tagger.tag(Collections.singletonList(word));
      List<AnalyzedTokenReadings> lcMatches = tagger.tag(Collections.singletonList(word.toLowerCase()));
      if (matches.size() == 1 && noTag(matches.get(0)) && lcMatches.size() == 1 && noTag(lcMatches.get(0))) {
        long count = origCount == -1 ? lm.getCount(word) : origCount;
        System.out.println(count + "\t" + word);
      }
    }
  
<no_super_class>