public PsiClassType @NotNull [] getImplementsListTypes(boolean includeSynthetic) {
    return CachedValuesManager.getCachedValue(myDefinition, includeSynthetic ? () -> {
      PsiClassType[] implementsTypes = getTransformationResult().getImplementsTypes();
      return CachedValueProvider.Result.create(implementsTypes, myDependencies);
    } : () -> {
      PsiClassType[] implementsTypes = GrClassImplUtil.getReferenceListTypes(myDefinition.getImplementsClause());
      return CachedValueProvider.Result.create(implementsTypes, myDependencies);
    }).clone();
  }
public PsiClassType @NotNull [] getImplementsListTypes(boolean includeSynthetic)