public final class io.netty.handler.codec.http2.Http2StreamChannelBootstrap
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: io.netty.handler.codec.http2.Http2StreamChannelBootstrap
  super_class: java.lang.Object
{
  private static final io.netty.util.internal.logging.InternalLogger logger;
    descriptor: Lio/netty/util/internal/logging/InternalLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final java.util.Map<io.netty.channel.ChannelOption<?>, java.lang.Object> options;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lio/netty/channel/ChannelOption<*>;Ljava/lang/Object;>;

  private final java.util.Map<io.netty.util.AttributeKey<?>, java.lang.Object> attrs;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lio/netty/util/AttributeKey<*>;Ljava/lang/Object;>;

  private final io.netty.channel.Channel channel;
    descriptor: Lio/netty/channel/Channel;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private volatile io.netty.channel.ChannelHandler handler;
    descriptor: Lio/netty/channel/ChannelHandler;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 40
            ldc Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic io.netty.handler.codec.http2.Http2StreamChannelBootstrap.$assertionsDisabled:Z
         3: .line 41
            ldc Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            invokestatic io.netty.util.internal.logging.InternalLoggerFactory.getInstance:(Ljava/lang/Class;)Lio/netty/util/internal/logging/InternalLogger;
            putstatic io.netty.handler.codec.http2.Http2StreamChannelBootstrap.logger:Lio/netty/util/internal/logging/InternalLogger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(io.netty.channel.Channel);
    descriptor: (Lio/netty/channel/Channel;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
        start local 1 // io.netty.channel.Channel channel
         0: .line 48
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 43
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.options:Ljava/util/Map;
         2: .line 44
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.attrs:Ljava/util/Map;
         3: .line 49
            aload 0 /* this */
            aload 1 /* channel */
            ldc "channel"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast io.netty.channel.Channel
            putfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.channel:Lio/netty/channel/Channel;
         4: .line 50
            return
        end local 1 // io.netty.channel.Channel channel
        end local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            0    5     1  channel  Lio/netty/channel/Channel;
    MethodParameters:
         Name  Flags
      channel  

  public <T> io.netty.handler.codec.http2.Http2StreamChannelBootstrap option(io.netty.channel.ChannelOption<T>, T);
    descriptor: (Lio/netty/channel/ChannelOption;Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
        start local 1 // io.netty.channel.ChannelOption option
        start local 2 // java.lang.Object value
         0: .line 58
            aload 1 /* option */
            ifnonnull 2
         1: .line 59
            new java.lang.NullPointerException
            dup
            ldc "option"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 61
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            ifnonnull 9
         3: .line 62
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.options:Ljava/util/Map;
            dup
            astore 3
            monitorenter
         4: .line 63
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.options:Ljava/util/Map;
            aload 1 /* option */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 62
            aload 3
            monitorexit
         6: goto 15
      StackMap locals: io.netty.handler.codec.http2.Http2StreamChannelBootstrap io.netty.channel.ChannelOption java.lang.Object java.util.Map
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
         9: .line 66
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.options:Ljava/util/Map;
            dup
            astore 3
            monitorenter
        10: .line 67
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.options:Ljava/util/Map;
            aload 1 /* option */
            aload 2 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 66
            aload 3
            monitorexit
        12: goto 15
      StackMap locals: io.netty.handler.codec.http2.Http2StreamChannelBootstrap io.netty.channel.ChannelOption java.lang.Object java.util.Map
      StackMap stack: java.lang.Throwable
        13: aload 3
            monitorexit
        14: athrow
        15: .line 70
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // java.lang.Object value
        end local 1 // io.netty.channel.ChannelOption option
        end local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            0   16     1  option  Lio/netty/channel/ChannelOption<TT;>;
            0   16     2   value  TT;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
          10    12      13  any
          13    14      13  any
    Signature: <T:Ljava/lang/Object;>(Lio/netty/channel/ChannelOption<TT;>;TT;)Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
    MethodParameters:
        Name  Flags
      option  
      value   

  public <T> io.netty.handler.codec.http2.Http2StreamChannelBootstrap attr(io.netty.util.AttributeKey<T>, T);
    descriptor: (Lio/netty/util/AttributeKey;Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
        start local 1 // io.netty.util.AttributeKey key
        start local 2 // java.lang.Object value
         0: .line 79
            aload 1 /* key */
            ifnonnull 2
         1: .line 80
            new java.lang.NullPointerException
            dup
            ldc "key"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 82
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            ifnonnull 9
         3: .line 83
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.attrs:Ljava/util/Map;
            dup
            astore 3
            monitorenter
         4: .line 84
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.attrs:Ljava/util/Map;
            aload 1 /* key */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 83
            aload 3
            monitorexit
         6: goto 15
      StackMap locals: io.netty.handler.codec.http2.Http2StreamChannelBootstrap io.netty.util.AttributeKey java.lang.Object java.util.Map
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
         9: .line 87
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.attrs:Ljava/util/Map;
            dup
            astore 3
            monitorenter
        10: .line 88
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.attrs:Ljava/util/Map;
            aload 1 /* key */
            aload 2 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 87
            aload 3
            monitorexit
        12: goto 15
      StackMap locals: io.netty.handler.codec.http2.Http2StreamChannelBootstrap io.netty.util.AttributeKey java.lang.Object java.util.Map
      StackMap stack: java.lang.Throwable
        13: aload 3
            monitorexit
        14: athrow
        15: .line 91
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // java.lang.Object value
        end local 1 // io.netty.util.AttributeKey key
        end local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            0   16     1    key  Lio/netty/util/AttributeKey<TT;>;
            0   16     2  value  TT;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
          10    12      13  any
          13    14      13  any
    Signature: <T:Ljava/lang/Object;>(Lio/netty/util/AttributeKey<TT;>;TT;)Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
    MethodParameters:
       Name  Flags
      key    
      value  

  public io.netty.handler.codec.http2.Http2StreamChannelBootstrap handler(io.netty.channel.ChannelHandler);
    descriptor: (Lio/netty/channel/ChannelHandler;)Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
        start local 1 // io.netty.channel.ChannelHandler handler
         0: .line 99
            aload 0 /* this */
            aload 1 /* handler */
            ldc "handler"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast io.netty.channel.ChannelHandler
            putfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.handler:Lio/netty/channel/ChannelHandler;
         1: .line 100
            aload 0 /* this */
            areturn
        end local 1 // io.netty.channel.ChannelHandler handler
        end local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            0    2     1  handler  Lio/netty/channel/ChannelHandler;
    MethodParameters:
         Name  Flags
      handler  

  public io.netty.util.concurrent.Future<io.netty.handler.codec.http2.Http2StreamChannel> open();
    descriptor: ()Lio/netty/util/concurrent/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
         0: .line 104
            aload 0 /* this */
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.channel:Lio/netty/channel/Channel;
            invokeinterface io.netty.channel.Channel.eventLoop:()Lio/netty/channel/EventLoop;
            invokeinterface io.netty.channel.EventLoop.newPromise:()Lio/netty/util/concurrent/Promise;
            invokevirtual io.netty.handler.codec.http2.Http2StreamChannelBootstrap.open:(Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future;
            areturn
        end local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
    Signature: ()Lio/netty/util/concurrent/Future<Lio/netty/handler/codec/http2/Http2StreamChannel;>;

  public io.netty.util.concurrent.Future<io.netty.handler.codec.http2.Http2StreamChannel> open(io.netty.util.concurrent.Promise<io.netty.handler.codec.http2.Http2StreamChannel>);
    descriptor: (Lio/netty/util/concurrent/Promise;)Lio/netty/util/concurrent/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
        start local 1 // io.netty.util.concurrent.Promise promise
         0: .line 108
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.channel:Lio/netty/channel/Channel;
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            ldc Lio/netty/handler/codec/http2/Http2MultiplexCodec;
            invokeinterface io.netty.channel.ChannelPipeline.context:(Ljava/lang/Class;)Lio/netty/channel/ChannelHandlerContext;
            astore 2 /* ctx */
        start local 2 // io.netty.channel.ChannelHandlerContext ctx
         1: .line 109
            aload 2 /* ctx */
            ifnonnull 9
         2: .line 110
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.channel:Lio/netty/channel/Channel;
            invokeinterface io.netty.channel.Channel.isActive:()Z
            ifeq 7
         3: .line 111
            aload 1 /* promise */
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc Lio/netty/handler/codec/http2/Http2MultiplexCodec;
            invokestatic io.netty.util.internal.StringUtil.simpleClassName:(Ljava/lang/Class;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 112
            ldc " must be in the ChannelPipeline of Channel "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.channel:Lio/netty/channel/Channel;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
         5: .line 111
            invokeinterface io.netty.util.concurrent.Promise.setFailure:(Ljava/lang/Throwable;)Lio/netty/util/concurrent/Promise;
            pop
         6: .line 113
            goto 14
         7: .line 114
      StackMap locals: io.netty.channel.ChannelHandlerContext
      StackMap stack:
            aload 1 /* promise */
            new java.nio.channels.ClosedChannelException
            dup
            invokespecial java.nio.channels.ClosedChannelException.<init>:()V
            invokeinterface io.netty.util.concurrent.Promise.setFailure:(Ljava/lang/Throwable;)Lio/netty/util/concurrent/Promise;
            pop
         8: .line 116
            goto 14
         9: .line 117
      StackMap locals:
      StackMap stack:
            aload 2 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.executor:()Lio/netty/util/concurrent/EventExecutor;
            astore 3 /* executor */
        start local 3 // io.netty.util.concurrent.EventExecutor executor
        10: .line 118
            aload 3 /* executor */
            invokeinterface io.netty.util.concurrent.EventExecutor.inEventLoop:()Z
            ifeq 13
        11: .line 119
            aload 0 /* this */
            aload 2 /* ctx */
            aload 1 /* promise */
            invokevirtual io.netty.handler.codec.http2.Http2StreamChannelBootstrap.open0:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/util/concurrent/Promise;)V
        12: .line 120
            goto 14
        13: .line 121
      StackMap locals: io.netty.util.concurrent.EventExecutor
      StackMap stack:
            aload 3 /* executor */
            new io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1
            dup
            aload 0 /* this */
            aload 2 /* ctx */
            aload 1 /* promise */
            invokespecial io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1.<init>:(Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;Lio/netty/channel/ChannelHandlerContext;Lio/netty/util/concurrent/Promise;)V
            invokeinterface io.netty.util.concurrent.EventExecutor.execute:(Ljava/lang/Runnable;)V
        end local 3 // io.netty.util.concurrent.EventExecutor executor
        14: .line 129
      StackMap locals:
      StackMap stack:
            aload 1 /* promise */
            areturn
        end local 2 // io.netty.channel.ChannelHandlerContext ctx
        end local 1 // io.netty.util.concurrent.Promise promise
        end local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            0   15     1   promise  Lio/netty/util/concurrent/Promise<Lio/netty/handler/codec/http2/Http2StreamChannel;>;
            1   15     2       ctx  Lio/netty/channel/ChannelHandlerContext;
           10   14     3  executor  Lio/netty/util/concurrent/EventExecutor;
    Signature: (Lio/netty/util/concurrent/Promise<Lio/netty/handler/codec/http2/Http2StreamChannel;>;)Lio/netty/util/concurrent/Future<Lio/netty/handler/codec/http2/Http2StreamChannel;>;
    MethodParameters:
         Name  Flags
      promise  final

  public void open0(io.netty.channel.ChannelHandlerContext, io.netty.util.concurrent.Promise<io.netty.handler.codec.http2.Http2StreamChannel>);
    descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/util/concurrent/Promise;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // io.netty.util.concurrent.Promise promise
         0: .line 133
            getstatic io.netty.handler.codec.http2.Http2StreamChannelBootstrap.$assertionsDisabled:Z
            ifne 1
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.executor:()Lio/netty/util/concurrent/EventExecutor;
            invokeinterface io.netty.util.concurrent.EventExecutor.inEventLoop:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 134
      StackMap locals:
      StackMap stack:
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.handler:()Lio/netty/channel/ChannelHandler;
            checkcast io.netty.handler.codec.http2.Http2MultiplexCodec
            invokevirtual io.netty.handler.codec.http2.Http2MultiplexCodec.newOutboundStream:()Lio/netty/handler/codec/http2/Http2StreamChannel;
            astore 3 /* streamChannel */
        start local 3 // io.netty.handler.codec.http2.Http2StreamChannel streamChannel
         2: .line 136
            aload 0 /* this */
            aload 3 /* streamChannel */
            invokevirtual io.netty.handler.codec.http2.Http2StreamChannelBootstrap.init:(Lio/netty/channel/Channel;)V
         3: .line 137
            goto 8
      StackMap locals: io.netty.handler.codec.http2.Http2StreamChannelBootstrap io.netty.channel.ChannelHandlerContext io.netty.util.concurrent.Promise io.netty.handler.codec.http2.Http2StreamChannel
      StackMap stack: java.lang.Exception
         4: astore 4 /* e */
        start local 4 // java.lang.Exception e
         5: .line 138
            aload 3 /* streamChannel */
            invokeinterface io.netty.handler.codec.http2.Http2StreamChannel.unsafe:()Lio/netty/channel/Channel$Unsafe;
            invokeinterface io.netty.channel.Channel$Unsafe.closeForcibly:()V
         6: .line 139
            aload 2 /* promise */
            aload 4 /* e */
            invokeinterface io.netty.util.concurrent.Promise.setFailure:(Ljava/lang/Throwable;)Lio/netty/util/concurrent/Promise;
            pop
         7: .line 140
            return
        end local 4 // java.lang.Exception e
         8: .line 143
      StackMap locals:
      StackMap stack:
            aload 1 /* ctx */
            invokeinterface io.netty.channel.ChannelHandlerContext.channel:()Lio/netty/channel/Channel;
            invokeinterface io.netty.channel.Channel.eventLoop:()Lio/netty/channel/EventLoop;
            aload 3 /* streamChannel */
            invokeinterface io.netty.channel.EventLoop.register:(Lio/netty/channel/Channel;)Lio/netty/channel/ChannelFuture;
            astore 4 /* future */
        start local 4 // io.netty.channel.ChannelFuture future
         9: .line 144
            aload 4 /* future */
            new io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2
            dup
            aload 0 /* this */
            aload 2 /* promise */
            aload 3 /* streamChannel */
            invokespecial io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2.<init>:(Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;Lio/netty/util/concurrent/Promise;Lio/netty/handler/codec/http2/Http2StreamChannel;)V
            invokeinterface io.netty.channel.ChannelFuture.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/channel/ChannelFuture;
            pop
        10: .line 162
            return
        end local 4 // io.netty.channel.ChannelFuture future
        end local 3 // io.netty.handler.codec.http2.Http2StreamChannel streamChannel
        end local 2 // io.netty.util.concurrent.Promise promise
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            0   11     1            ctx  Lio/netty/channel/ChannelHandlerContext;
            0   11     2        promise  Lio/netty/util/concurrent/Promise<Lio/netty/handler/codec/http2/Http2StreamChannel;>;
            2   11     3  streamChannel  Lio/netty/handler/codec/http2/Http2StreamChannel;
            5    8     4              e  Ljava/lang/Exception;
            9   11     4         future  Lio/netty/channel/ChannelFuture;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
    Signature: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/util/concurrent/Promise<Lio/netty/handler/codec/http2/Http2StreamChannel;>;)V
    MethodParameters:
         Name  Flags
      ctx      
      promise  final

  private void init(io.netty.channel.Channel);
    descriptor: (Lio/netty/channel/Channel;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
        start local 1 // io.netty.channel.Channel channel
         0: .line 166
            aload 1 /* channel */
            invokeinterface io.netty.channel.Channel.pipeline:()Lio/netty/channel/ChannelPipeline;
            astore 2 /* p */
        start local 2 // io.netty.channel.ChannelPipeline p
         1: .line 167
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.handler:Lio/netty/channel/ChannelHandler;
            astore 3 /* handler */
        start local 3 // io.netty.channel.ChannelHandler handler
         2: .line 168
            aload 3 /* handler */
            ifnull 4
         3: .line 169
            aload 2 /* p */
            iconst_1
            anewarray io.netty.channel.ChannelHandler
            dup
            iconst_0
            aload 3 /* handler */
            aastore
            invokeinterface io.netty.channel.ChannelPipeline.addLast:([Lio/netty/channel/ChannelHandler;)Lio/netty/channel/ChannelPipeline;
            pop
         4: .line 171
      StackMap locals: io.netty.channel.ChannelPipeline io.netty.channel.ChannelHandler
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.options:Ljava/util/Map;
            dup
            astore 4
            monitorenter
         5: .line 172
            aload 1 /* channel */
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.options:Ljava/util/Map;
            getstatic io.netty.handler.codec.http2.Http2StreamChannelBootstrap.logger:Lio/netty/util/internal/logging/InternalLogger;
            invokestatic io.netty.handler.codec.http2.Http2StreamChannelBootstrap.setChannelOptions:(Lio/netty/channel/Channel;Ljava/util/Map;Lio/netty/util/internal/logging/InternalLogger;)V
         6: .line 171
            aload 4
            monitorexit
         7: goto 10
      StackMap locals: io.netty.handler.codec.http2.Http2StreamChannelBootstrap io.netty.channel.Channel io.netty.channel.ChannelPipeline io.netty.channel.ChannelHandler java.util.Map
      StackMap stack: java.lang.Throwable
         8: aload 4
            monitorexit
         9: athrow
        10: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.attrs:Ljava/util/Map;
            dup
            astore 4
            monitorenter
        11: .line 176
            aload 0 /* this */
            getfield io.netty.handler.codec.http2.Http2StreamChannelBootstrap.attrs:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 14
      StackMap locals: io.netty.handler.codec.http2.Http2StreamChannelBootstrap io.netty.channel.Channel io.netty.channel.ChannelPipeline io.netty.channel.ChannelHandler java.util.Map top java.util.Iterator
      StackMap stack:
        12: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* e */
        start local 5 // java.util.Map$Entry e
        13: .line 177
            aload 1 /* channel */
            aload 5 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast io.netty.util.AttributeKey
            invokeinterface io.netty.channel.Channel.attr:(Lio/netty/util/AttributeKey;)Lio/netty/util/Attribute;
            aload 5 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            invokeinterface io.netty.util.Attribute.set:(Ljava/lang/Object;)V
        end local 5 // java.util.Map$Entry e
        14: .line 176
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        15: .line 175
            aload 4
            monitorexit
        16: goto 19
      StackMap locals: io.netty.handler.codec.http2.Http2StreamChannelBootstrap io.netty.channel.Channel io.netty.channel.ChannelPipeline io.netty.channel.ChannelHandler java.util.Map
      StackMap stack: java.lang.Throwable
        17: aload 4
            monitorexit
        18: athrow
        19: .line 180
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.netty.channel.ChannelHandler handler
        end local 2 // io.netty.channel.ChannelPipeline p
        end local 1 // io.netty.channel.Channel channel
        end local 0 // io.netty.handler.codec.http2.Http2StreamChannelBootstrap this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0     this  Lio/netty/handler/codec/http2/Http2StreamChannelBootstrap;
            0   20     1  channel  Lio/netty/channel/Channel;
            1   20     2        p  Lio/netty/channel/ChannelPipeline;
            2   20     3  handler  Lio/netty/channel/ChannelHandler;
           13   14     5        e  Ljava/util/Map$Entry<Lio/netty/util/AttributeKey<*>;Ljava/lang/Object;>;
      Exception table:
        from    to  target  type
           5     7       8  any
           8     9       8  any
          11    16      17  any
          17    18      17  any
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
         Name  Flags
      channel  

  private static void setChannelOptions(io.netty.channel.Channel, java.util.Map<io.netty.channel.ChannelOption<?>, java.lang.Object>, io.netty.util.internal.logging.InternalLogger);
    descriptor: (Lio/netty/channel/Channel;Ljava/util/Map;Lio/netty/util/internal/logging/InternalLogger;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // io.netty.channel.Channel channel
        start local 1 // java.util.Map options
        start local 2 // io.netty.util.internal.logging.InternalLogger logger
         0: .line 184
            aload 1 /* options */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 3
      StackMap locals: io.netty.channel.Channel java.util.Map io.netty.util.internal.logging.InternalLogger top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 3 /* e */
        start local 3 // java.util.Map$Entry e
         2: .line 185
            aload 0 /* channel */
            aload 3 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast io.netty.channel.ChannelOption
            aload 3 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            aload 2 /* logger */
            invokestatic io.netty.handler.codec.http2.Http2StreamChannelBootstrap.setChannelOption:(Lio/netty/channel/Channel;Lio/netty/channel/ChannelOption;Ljava/lang/Object;Lio/netty/util/internal/logging/InternalLogger;)V
        end local 3 // java.util.Map$Entry e
         3: .line 184
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 187
            return
        end local 2 // io.netty.util.internal.logging.InternalLogger logger
        end local 1 // java.util.Map options
        end local 0 // io.netty.channel.Channel channel
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0  channel  Lio/netty/channel/Channel;
            0    5     1  options  Ljava/util/Map<Lio/netty/channel/ChannelOption<*>;Ljava/lang/Object;>;
            0    5     2   logger  Lio/netty/util/internal/logging/InternalLogger;
            2    3     3        e  Ljava/util/Map$Entry<Lio/netty/channel/ChannelOption<*>;Ljava/lang/Object;>;
    Signature: (Lio/netty/channel/Channel;Ljava/util/Map<Lio/netty/channel/ChannelOption<*>;Ljava/lang/Object;>;Lio/netty/util/internal/logging/InternalLogger;)V
    MethodParameters:
         Name  Flags
      channel  
      options  
      logger   

  private static void setChannelOption(io.netty.channel.Channel, io.netty.channel.ChannelOption<?>, , io.netty.util.internal.logging.InternalLogger);
    descriptor: (Lio/netty/channel/Channel;Lio/netty/channel/ChannelOption;Ljava/lang/Object;Lio/netty/util/internal/logging/InternalLogger;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // io.netty.channel.Channel channel
        start local 1 // io.netty.channel.ChannelOption option
        start local 2 // java.lang.Object value
        start local 3 // io.netty.util.internal.logging.InternalLogger logger
         0: .line 193
            aload 0 /* channel */
            invokeinterface io.netty.channel.Channel.config:()Lio/netty/channel/ChannelConfig;
            aload 1 /* option */
            aload 2 /* value */
            invokeinterface io.netty.channel.ChannelConfig.setOption:(Lio/netty/channel/ChannelOption;Ljava/lang/Object;)Z
            ifne 7
         1: .line 194
            aload 3 /* logger */
            ldc "Unknown channel option '{}' for channel '{}'"
            aload 1 /* option */
            aload 0 /* channel */
            invokeinterface io.netty.util.internal.logging.InternalLogger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 196
            goto 7
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 4 /* t */
        start local 4 // java.lang.Throwable t
         4: .line 197
            aload 3 /* logger */
         5: .line 198
            ldc "Failed to set channel option '{}' with value '{}' for channel '{}'"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* option */
            aastore
            dup
            iconst_1
            aload 2 /* value */
            aastore
            dup
            iconst_2
            aload 0 /* channel */
            aastore
            dup
            iconst_3
            aload 4 /* t */
            aastore
         6: .line 197
            invokeinterface io.netty.util.internal.logging.InternalLogger.warn:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 4 // java.lang.Throwable t
         7: .line 200
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.netty.util.internal.logging.InternalLogger logger
        end local 2 // java.lang.Object value
        end local 1 // io.netty.channel.ChannelOption option
        end local 0 // io.netty.channel.Channel channel
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0  channel  Lio/netty/channel/Channel;
            0    8     1   option  Lio/netty/channel/ChannelOption<*>;
            0    8     2    value  Ljava/lang/Object;
            0    8     3   logger  Lio/netty/util/internal/logging/InternalLogger;
            4    7     4        t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Throwable
    Signature: (Lio/netty/channel/Channel;Lio/netty/channel/ChannelOption<*>;Ljava/lang/Object;Lio/netty/util/internal/logging/InternalLogger;)V
    MethodParameters:
         Name  Flags
      channel  
      option   
      value    
      logger   
}
SourceFile: "Http2StreamChannelBootstrap.java"
NestMembers:
  io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1  io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2
InnerClasses:
  public abstract Unsafe = io.netty.channel.Channel$Unsafe of io.netty.channel.Channel
  io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1
  io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2
  public abstract Entry = java.util.Map$Entry of java.util.Map