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

import androidx.compose.runtime.*

@Composable fun Example(data: Data = Data(""), intData: IntData = IntData(0)) {}
@Composable fun ExampleNullable(data: Data? = Data(""), intData: IntData = IntData(0)) {}
@Composable fun ExampleNullableData(data: NullableData = NullableData(null), intData: IntData = IntData(0)) {}
@Composable private fun PrivateExample(data: Data = Data(""), intData: IntData = IntData(0)) {}
@Composable internal fun InternalExample(data: Data = Data(""), intData: IntData = IntData(0)) {}
@Composable @PublishedApi internal fun PublishedExample(data: Data = Data(""), intData: IntData = IntData(0)) {}

abstract class Test {
    @Composable private fun PrivateExample(data: Data = Data("")) {}
    @Composable fun PublicExample(data: Data = Data("")) {}
    @Composable internal fun InternalExample(data: Data = Data("")) {}
    @Composable @PublishedApi internal fun PublishedExample(data: Data = Data("")) {}
    @Composable protected fun ProtectedExample(data: Data = Data("")) {}
}

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

@Composable
@FunctionKeyMeta(key = 2079548765, startOffset = 80, endOffset = 148)
fun Example(data: Data?, intData: IntData, %composer: Composer?, %changed: Int, %default: Int) {
  %composer = %composer.startRestartGroup(<>)
  sourceInformation(%composer, "C(Example)P(0:Data,1:IntData):Test.kt")
  if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
    if (%default and 0b0001 != 0) {
      data = Data("")
    }
    if (%default and 0b0010 != 0) {
      intData = IntData(0)
    }
    if (isTraceInProgress()) {
      traceEventStart(<>, %changed, -1, <>)
    }
    if (isTraceInProgress()) {
      traceEventEnd()
    }
  } else {
    %composer.skipToGroupEnd()
  }
  %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
    Example(data, intData, %composer, updateChangedFlags(%changed or 0b0001), %default)
  }
}
@Composable
@FunctionKeyMeta(key = -1137812578, startOffset = 177, endOffset = 254)
fun ExampleNullable(data: Data?, intData: IntData, %composer: Composer?, %changed: Int, %default: Int) {
  %composer = %composer.startRestartGroup(<>)
  sourceInformation(%composer, "C(ExampleNullable)P(0:Data,1:IntData):Test.kt")
  if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
    if (%default and 0b0001 != 0) {
      data = Data("")
    }
    if (%default and 0b0010 != 0) {
      intData = IntData(0)
    }
    if (isTraceInProgress()) {
      traceEventStart(<>, %changed, -1, <>)
    }
    if (isTraceInProgress()) {
      traceEventEnd()
    }
  } else {
    %composer.skipToGroupEnd()
  }
  %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
    ExampleNullable(data, intData, %composer, updateChangedFlags(%changed or 0b0001), %default)
  }
}
@Composable
@FunctionKeyMeta(key = -1599459577, startOffset = 283, endOffset = 381)
fun ExampleNullableData(data: NullableData?, intData: IntData, %composer: Composer?, %changed: Int, %default: Int) {
  %composer = %composer.startRestartGroup(<>)
  sourceInformation(%composer, "C(ExampleNullableData)P(0:NullableData,1:IntData):Test.kt")
  if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
    if (%default and 0b0001 != 0) {
      data = NullableData(null)
    }
    if (%default and 0b0010 != 0) {
      intData = IntData(0)
    }
    if (isTraceInProgress()) {
      traceEventStart(<>, %changed, -1, <>)
    }
    if (isTraceInProgress()) {
      traceEventEnd()
    }
  } else {
    %composer.skipToGroupEnd()
  }
  %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
    ExampleNullableData(data, intData, %composer, updateChangedFlags(%changed or 0b0001), %default)
  }
}
@Composable
@FunctionKeyMeta(key = -597728330, startOffset = 418, endOffset = 493)
private fun PrivateExample(data: Data?, intData: IntData, %composer: Composer?, %changed: Int, %default: Int) {
  %composer = %composer.startRestartGroup(<>)
  sourceInformation(%composer, "C(PrivateExample)P(0:Data,1:IntData):Test.kt")
  if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
    if (%default and 0b0001 != 0) {
      data = Data("")
    }
    if (%default and 0b0010 != 0) {
      intData = IntData(0)
    }
    if (isTraceInProgress()) {
      traceEventStart(<>, %changed, -1, <>)
    }
    if (isTraceInProgress()) {
      traceEventEnd()
    }
  } else {
    %composer.skipToGroupEnd()
  }
  %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
    PrivateExample(data, intData, %composer, updateChangedFlags(%changed or 0b0001), %default)
  }
}
@Composable
@FunctionKeyMeta(key = 645501472, startOffset = 531, endOffset = 607)
internal fun InternalExample(data: Data?, intData: IntData, %composer: Composer?, %changed: Int, %default: Int) {
  %composer = %composer.startRestartGroup(<>)
  sourceInformation(%composer, "C(InternalExample)P(0:Data,1:IntData):Test.kt")
  if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
    if (%default and 0b0001 != 0) {
      data = Data("")
    }
    if (%default and 0b0010 != 0) {
      intData = IntData(0)
    }
    if (isTraceInProgress()) {
      traceEventStart(<>, %changed, -1, <>)
    }
    if (isTraceInProgress()) {
      traceEventEnd()
    }
  } else {
    %composer.skipToGroupEnd()
  }
  %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
    InternalExample(data, intData, %composer, updateChangedFlags(%changed or 0b0001), %default)
  }
}
@Composable
@PublishedApi
@FunctionKeyMeta(key = -2145623253, startOffset = 659, endOffset = 736)
internal fun PublishedExample(data: Data?, intData: IntData, %composer: Composer?, %changed: Int, %default: Int) {
  %composer = %composer.startRestartGroup(<>)
  sourceInformation(%composer, "C(PublishedExample)P(0:Data,1:IntData):Test.kt")
  if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
    if (%default and 0b0001 != 0) {
      data = Data("")
    }
    if (%default and 0b0010 != 0) {
      intData = IntData(0)
    }
    if (isTraceInProgress()) {
      traceEventStart(<>, %changed, -1, <>)
    }
    if (isTraceInProgress()) {
      traceEventEnd()
    }
  } else {
    %composer.skipToGroupEnd()
  }
  %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
    PublishedExample(data, intData, %composer, updateChangedFlags(%changed or 0b0001), %default)
  }
}
@StabilityInferred(parameters = 1)
abstract class Test {
  @Composable
  @FunctionKeyMeta(key = 954383737, startOffset = 816, endOffset = 860)
  private fun PrivateExample(data: Data?, %composer: Composer?, %changed: Int, %default: Int) {
    %composer = %composer.startRestartGroup(<>)
    sourceInformation(%composer, "C(PrivateExample)P(0:Data):Test.kt")
    if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
      if (%default and 0b0001 != 0) {
        data = Data("")
      }
      if (isTraceInProgress()) {
        traceEventStart(<>, %changed, -1, <>)
      }
      if (isTraceInProgress()) {
        traceEventEnd()
      }
    } else {
      %composer.skipToGroupEnd()
    }
    val tmp0_rcvr = <this>
    %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
      tmp0_rcvr.PrivateExample(data, %composer, updateChangedFlags(%changed or 0b0001), %default)
    }
  }
  @Composable
  @FunctionKeyMeta(key = 1435451387, startOffset = 893, endOffset = 936)
  fun PublicExample(data: Data?, %composer: Composer?, %changed: Int, %default: Int) {
    %composer = %composer.startRestartGroup(<>)
    sourceInformation(%composer, "C(PublicExample)P(0:Data):Test.kt")
    if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
      if (%default and 0b0001 != 0) {
        data = Data("")
      }
      if (isTraceInProgress()) {
        traceEventStart(<>, %changed, -1, <>)
      }
      if (isTraceInProgress()) {
        traceEventEnd()
      }
    } else {
      %composer.skipToGroupEnd()
    }
    val tmp0_rcvr = <this>
    %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
      tmp0_rcvr.PublicExample(data, %composer, updateChangedFlags(%changed or 0b0001), %default)
    }
  }
  @Composable
  @FunctionKeyMeta(key = -1784545585, startOffset = 978, endOffset = 1023)
  internal fun InternalExample(data: Data?, %composer: Composer?, %changed: Int, %default: Int) {
    %composer = %composer.startRestartGroup(<>)
    sourceInformation(%composer, "C(InternalExample)P(0:Data):Test.kt")
    if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
      if (%default and 0b0001 != 0) {
        data = Data("")
      }
      if (isTraceInProgress()) {
        traceEventStart(<>, %changed, -1, <>)
      }
      if (isTraceInProgress()) {
        traceEventEnd()
      }
    } else {
      %composer.skipToGroupEnd()
    }
    val tmp0_rcvr = <this>
    %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
      tmp0_rcvr.InternalExample(data, %composer, updateChangedFlags(%changed or 0b0001), %default)
    }
  }
  @Composable
  @PublishedApi
  @FunctionKeyMeta(key = -1614377500, startOffset = 1079, endOffset = 1125)
  internal fun PublishedExample(data: Data?, %composer: Composer?, %changed: Int, %default: Int) {
    %composer = %composer.startRestartGroup(<>)
    sourceInformation(%composer, "C(PublishedExample)P(0:Data):Test.kt")
    if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
      if (%default and 0b0001 != 0) {
        data = Data("")
      }
      if (isTraceInProgress()) {
        traceEventStart(<>, %changed, -1, <>)
      }
      if (isTraceInProgress()) {
        traceEventEnd()
      }
    } else {
      %composer.skipToGroupEnd()
    }
    val tmp0_rcvr = <this>
    %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
      tmp0_rcvr.PublishedExample(data, %composer, updateChangedFlags(%changed or 0b0001), %default)
    }
  }
  @Composable
  @FunctionKeyMeta(key = 345896868, startOffset = 1168, endOffset = 1214)
  protected fun ProtectedExample(data: Data?, %composer: Composer?, %changed: Int, %default: Int) {
    %composer = %composer.startRestartGroup(<>)
    sourceInformation(%composer, "C(ProtectedExample)P(0:Data):Test.kt")
    if (%composer.shouldExecute(%changed and 0b0001 != 0, %changed and 0b0001)) {
      if (%default and 0b0001 != 0) {
        data = Data("")
      }
      if (isTraceInProgress()) {
        traceEventStart(<>, %changed, -1, <>)
      }
      if (isTraceInProgress()) {
        traceEventEnd()
      }
    } else {
      %composer.skipToGroupEnd()
    }
    val tmp0_rcvr = <this>
    %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int ->
      tmp0_rcvr.ProtectedExample(data, %composer, updateChangedFlags(%changed or 0b0001), %default)
    }
  }
  static val %stable: Int = 0
  @Composable
  @JvmSynthetic
  @Deprecated(message = "Binary compatibility stub for default parameters", level = DeprecationLevel.HIDDEN)
  fun PublicExample(data: Data, %composer: Composer?, %changed: Int, %default: Int) {
    return PublicExample(data, %composer, %changed, %default)
  }
  @Composable
  @PublishedApi
  @JvmSynthetic
  @Deprecated(message = "Binary compatibility stub for default parameters", level = DeprecationLevel.HIDDEN)
  internal fun PublishedExample(data: Data, %composer: Composer?, %changed: Int, %default: Int) {
    return PublishedExample(data, %composer, %changed, %default)
  }
  @Composable
  @JvmSynthetic
  @Deprecated(message = "Binary compatibility stub for default parameters", level = DeprecationLevel.HIDDEN)
  protected fun ProtectedExample(data: Data, %composer: Composer?, %changed: Int, %default: Int) {
    return ProtectedExample(data, %composer, %changed, %default)
  }
}
@Composable
@JvmSynthetic
@Deprecated(message = "Binary compatibility stub for default parameters", level = DeprecationLevel.HIDDEN)
fun Example(data: Data, intData: IntData, %composer: Composer?, %changed: Int, %default: Int) {
  return Example(data, intData, %composer, %changed, %default)
}
@Composable
@PublishedApi
@JvmSynthetic
@Deprecated(message = "Binary compatibility stub for default parameters", level = DeprecationLevel.HIDDEN)
internal fun PublishedExample(data: Data, intData: IntData, %composer: Composer?, %changed: Int, %default: Int) {
  return PublishedExample(data, intData, %composer, %changed, %default)
}
