//
// Source
// ------------------------------------------

sealed class CompositionLocal2<T> {
    inline val current: T
        @Composable
        get() = error("")
    @Composable fun foo() {}
}

abstract class ProvidableCompositionLocal2<T> : CompositionLocal2<T>() {}
class DynamicProvidableCompositionLocal2<T> : ProvidableCompositionLocal2<T>() {}
class StaticProvidableCompositionLocal2<T> : ProvidableCompositionLocal2<T>() {}

//
// Transformed IR
// ------------------------------------------

public abstract class CompositionLocal2 {
  private <init>()V
  public final getCurrent(Landroidx/compose/runtime/Composer;I)Ljava/lang/Object;
  public final foo(Landroidx/compose/runtime/Composer;I)V
  public synthetic <init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
  static <clinit>()V
  public final static I %stable
  final static INNERCLASS CompositionLocal2%foo%1 null null
}
final class CompositionLocal2%foo%1 extends kotlin/jvm/internal/Lambda implements kotlin/jvm/functions/Function2 {
  <init>(LCompositionLocal2;I)V
  public final invoke(Landroidx/compose/runtime/Composer;I)V
  public synthetic bridge invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
  final synthetic LCompositionLocal2; %tmp0_rcvr
  final synthetic I %%changed
  OUTERCLASS CompositionLocal2 foo (Landroidx/compose/runtime/Composer;I)V
  final static INNERCLASS CompositionLocal2%foo%1 null null
}
public abstract class ProvidableCompositionLocal2 extends CompositionLocal2 {
  public <init>()V
  static <clinit>()V
  public final static I %stable
}
public final class DynamicProvidableCompositionLocal2 extends ProvidableCompositionLocal2 {
  public <init>()V
  static <clinit>()V
  public final static I %stable
}
public final class StaticProvidableCompositionLocal2 extends ProvidableCompositionLocal2 {
  public <init>()V
  static <clinit>()V
  public final static I %stable
}
