class ProhibitComparator {

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

  private static boolean hasPrefixLine(String word, List<String> expanded2) {
    for (String line : expanded2) {
      if (line.endsWith(".*") && word.startsWith(line.substring(0, line.length()-2))) {
        //System.out.println("!!"+line.substring(0, line.length()-2));
        return true;
      }
    }
    return false;
  }

  @NotNull
  private static List<String> getExpandedLines(String filename) throws IOException {
    LineExpander expander = new LineExpander();
    List<String> lines = Files.readAllLines(Paths.get(filename));
    List<String> expanded = new ArrayList<>();
    for (String line : lines) {
      if (line.startsWith("#")) {
        continue;
      }
      expanded.addAll(expander.expandLine(line));
    }
    return expanded;
  }
}

    if (args.length != 2) {
      System.out.println("Usage: " + ProhibitComparator.class.getName() + " <oldFile> <newFile>");
      System.exit(1);
    }
    List<String> expanded1 = getExpandedLines(args[0]);
    List<String> expanded2 = getExpandedLines(args[1]);

    System.out.println("Words removed in " + args[1] + ":");
    System.out.println("*** NOTE: result might not be accurate for words with '.*'");
    for (String word : expanded1) {
      if (!expanded2.contains(word) && !hasPrefixLine(word, expanded2)) {
        System.out.println(word);
      }
    }
  
<no_super_class>