content: package kotlinx.coroutines.channels;
  
  import kotlin.Deprecated;
  import kotlin.DeprecationLevel;
  import kotlin.Metadata;
  import kotlin.ReplaceWith;
  import kotlin.coroutines.Continuation;
  import kotlinx.coroutines.channels.ReceiveChannel;
  import kotlinx.coroutines.channels.SendChannel;
  import kotlinx.coroutines.internal.SystemPropsKt;
  import kotlinx.coroutines.selects.SelectClause1;
  
  @Metadata(d1 = {"\u0000\u0012\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\bf\u0018\u0000 \u0004*\u0004\b\u0000\u0010\u00012\b\u0012\u0004\u0012\u0002H\u00010\u00022\b\u0012\u0004\u0012\u0002H\u00010\u0003:\u0001\u0004¨\u0006\u0005"}, d2 = {"Lkotlinx/coroutines/channels/Channel;", "E", "Lkotlinx/coroutines/channels/SendChannel;", "Lkotlinx/coroutines/channels/ReceiveChannel;", "Factory", "kotlinx-coroutines-core"}, k = 1, mv = {1, 6, 0}, xi = 48)
  /* compiled from: Channel.kt */
  public interface Channel<E> extends SendChannel<E>, ReceiveChannel<E> {
      public static final int BUFFERED = -2;
      public static final int CONFLATED = -1;
      public static final String DEFAULT_BUFFER_PROPERTY_NAME = "kotlinx.coroutines.channels.defaultBuffer";
      public static final Factory Factory = Factory.$$INSTANCE;
      public static final int OPTIONAL_CHANNEL = -3;
      public static final int RENDEZVOUS = 0;
      public static final int UNLIMITED = Integer.MAX_VALUE;
  
      @Metadata(k = 3, mv = {1, 6, 0}, xi = 48)
      /* compiled from: Channel.kt */
      public static final class DefaultImpls {
          public static <E> SelectClause1<E> getOnReceiveOrNull(Channel<E> channel) {
              return ReceiveChannel.DefaultImpls.getOnReceiveOrNull(channel);
          }
  
          @Deprecated(level = DeprecationLevel.ERROR, message = "Deprecated in the favour of 'trySend' method", replaceWith = @ReplaceWith(expression = "trySend(element).isSuccess", imports = {}))
          public static <E> boolean offer(Channel<E> channel, E element) {
              return SendChannel.DefaultImpls.offer(channel, element);
          }
  
          @Deprecated(level = DeprecationLevel.ERROR, message = "Deprecated in the favour of 'tryReceive'. Please note that the provided replacement does not rethrow channel's close cause as 'poll' did, for the precise replacement please refer to the 'poll' documentation", replaceWith = @ReplaceWith(expression = "tryReceive().getOrNull()", imports = {}))
          public static <E> E poll(Channel<E> channel) {
              return ReceiveChannel.DefaultImpls.poll(channel);
          }
  
          @Deprecated(level = DeprecationLevel.ERROR, message = "Deprecated in favor of 'receiveCatching'. Please note that the provided replacement does not rethrow channel's close cause as 'receiveOrNull' did, for the detailed replacement please refer to the 'receiveOrNull' documentation", replaceWith = @ReplaceWith(expression = "receiveCatching().getOrNull()", imports = {}))
          public static <E> Object receiveOrNull(Channel<E> channel, Continuation<? super E> $completion) {
              return ReceiveChannel.DefaultImpls.receiveOrNull(channel, $completion);
          }
      }
  
      @Metadata(d1 = {"\u0000\u001c\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\u0005\n\u0002\u0010\u000e\n\u0002\b\u0004\b\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002R\u000e\u0010\u0003\u001a\u00020\u0004XT¢\u0006\u0002\n\u0000R\u0014\u0010\u0005\u001a\u00020\u0004X\u0004¢\u0006\b\n\u0000\u001a\u0004\b\u0006\u0010\u0007R\u000e\u0010\b\u001a\u00020\u0004XT¢\u0006\u0002\n\u0000R\u000e\u0010\t\u001a\u00020\nXT¢\u0006\u0002\n\u0000R\u000e\u0010\u000b\u001a\u00020\u0004XT¢\u0006\u0002\n\u0000R\u000e\u0010\f\u001a\u00020\u0004XT¢\u0006\u0002\n\u0000R\u000e\u0010\r\u001a\u00020\u0004XT¢\u0006\u0002\n\u0000¨\u0006\u000e"}, d2 = {"Lkotlinx/coroutines/channels/Channel$Factory;", "", "()V", "BUFFERED", "", "CHANNEL_DEFAULT_CAPACITY", "getCHANNEL_DEFAULT_CAPACITY$kotlinx_coroutines_core", "()I", "CONFLATED", "DEFAULT_BUFFER_PROPERTY_NAME", "", "OPTIONAL_CHANNEL", "RENDEZVOUS", "UNLIMITED", "kotlinx-coroutines-core"}, k = 1, mv = {1, 6, 0}, xi = 48)
      /* compiled from: Channel.kt */
      public static final class Factory {
          static final /* synthetic */ Factory $$INSTANCE = new Factory();
          public static final int BUFFERED = -2;
          private static final int CHANNEL_DEFAULT_CAPACITY = SystemPropsKt.systemProp("kotlinx.coroutines.channels.defaultBuffer", 64, 1, 2147483646);
          public static final int CONFLATED = -1;
          public static final String DEFAULT_BUFFER_PROPERTY_NAME = "kotlinx.coroutines.channels.defaultBuffer";
          public static final int OPTIONAL_CHANNEL = -3;
          public static final int RENDEZVOUS = 0;
          public static final int UNLIMITED = Integer.MAX_VALUE;
  
          private Factory() {
          }
  
          public final int getCHANNEL_DEFAULT_CAPACITY$kotlinx_coroutines_core() {
              return CHANNEL_DEFAULT_CAPACITY;
          }
      }
  }
  