private @NotNull Animation addListener(@NotNull Phase phase, @NotNull Runnable runnable) {
    return addListener(p -> {
      if (p == phase) runnable.run();
    });
  }
private @NotNull Animation addListener(@NotNull Phase phase, @NotNull Runnable runnable)