@Override
      public @Nullable ChangeApplier prepareChange(@NotNull List<? extends @NotNull VFileEvent> events) {
        List<DomEvent> domEvents = new ArrayList<>();
        for (VFileEvent event : events) {
          if (shouldFireDomEvents(event)) {
            ProgressManager.checkCanceled();
            domEvents.addAll(calcDomChangeEvents(event.getFile()));
          }
        }
        return domEvents.isEmpty() ? null : new ChangeApplier() {
          @Override
          public void afterVfsChange() {
            fireEvents(domEvents);
          }
        };
      }
@Override
      public @Nullable ChangeApplier prepareChange(@NotNull List<? extends @NotNull VFileEvent> events)