@RequiresEdt
  public void updateContext(@NotNull UserDataHolder context, @NotNull final Settings settings) {
    ThreadingAssertions.assertEventDispatchThread();
    if (myFoldings.isEmpty()) return; // do not rewrite cache by initial state
    context.putUserData(CACHE_KEY, getFoldingCache(settings));
  }
@RequiresEdt
  public void updateContext(@NotNull UserDataHolder context, @NotNull final Settings settings)